Messaging API for inter process communication. More...
Messaging API for inter process communication.
Definition in file msg.h.
Go to the source code of this file.
Data Structures | |
struct | msg_t |
Describes a message object which can be sent between threads. More... | |
Macros | |
#define | KERNEL_PID_ISR (KERNEL_PID_LAST + 1) |
Value of msg_t::sender_pid if the sender was an interrupt service routine. | |
#define | CONFIG_MSG_QUEUE_PRINT_MAX 16U |
Number of messages to be maximally printed through msg_queue_print. | |
Functions | |
int | msg_send (msg_t *m, kernel_pid_t target_pid) |
Send a message (blocking). | |
int | msg_try_send (msg_t *m, kernel_pid_t target_pid) |
Send a message (non-blocking). | |
int | msg_send_to_self (msg_t *m) |
Send a message to the current thread. | |
int | msg_send_int (msg_t *m, kernel_pid_t target_pid) |
Send message from interrupt. | |
static int | msg_sent_by_int (const msg_t *m) |
Test if the message was sent inside an ISR. | |
int | msg_receive (msg_t *m) |
Receive a message. | |
int | msg_try_receive (msg_t *m) |
Try to receive a message. | |
int | msg_send_receive (msg_t *m, msg_t *reply, kernel_pid_t target_pid) |
Send a message, block until reply received. | |
int | msg_reply (msg_t *m, msg_t *reply) |
Replies to a message. | |
int | msg_reply_int (msg_t *m, msg_t *reply) |
Replies to a message from interrupt. | |
unsigned | msg_avail_thread (kernel_pid_t pid) |
Check how many messages are available (waiting) in the message queue of a specific thread. | |
unsigned | msg_avail (void) |
Check how many messages are available (waiting) in the message queue. | |
unsigned | msg_queue_capacity (kernel_pid_t pid) |
Get maximum capacity of a thread's queue length. | |
void | msg_init_queue (msg_t *array, int num) |
Initialize the current thread's message queue. | |
void | msg_queue_print (void) |
Prints the message queue of the current thread. | |