Go to the documentation of this file.
31 #if (CH_CFG_USE_MESSAGES == TRUE) || defined(__DOXYGEN__)
73 #define chMsgWaitS() chMsgWaitTimeoutS(TIME_INFINITE)
85 #define chMsgGet(tp) ((tp)->sntmsg)
97 #define chMsgReleaseS(tp, msg) do { \
98 (void) chSchReadyI(tp, msg); \
thread_t * chMsgWait(void)
Suspends the thread and waits for an incoming message.
Structure representing a thread.
msg_t chMsgSend(thread_t *tp, msg_t msg)
Sends a message to the specified thread.
void chMsgRelease(thread_t *tp, msg_t msg)
Releases a sender thread specifying a response message.
uint64_t sysinterval_t
Type of time interval.
thread_t * chMsgWaitTimeoutS(sysinterval_t timeout)
Suspends the thread and waits for an incoming message or a timeout to occur.
thread_t * chMsgWaitTimeout(sysinterval_t timeout)
Suspends the thread and waits for an incoming message or a timeout to occur.