Enqueue messages remotely in receiver queue. More...
Typedefs | |
typedef int | nm_onesided_queue_id_t |
local id for a queue More... | |
Functions | |
nm_onesided_queue_id_t | nm_onesided_queue_create (nm_onesided_t p_onesided) |
create a local queue, accessible remotely More... | |
void | nm_onesided_queue_ienqueue (nm_onesided_t p_onesided, struct nm_gate_s *p_gate, nm_onesided_queue_id_t queue, const void *p_ptr, nm_len_t len, nm_onesided_request_t *p_req) |
enqueue a message in the given remote queue, non-blocking version More... | |
void | nm_onesided_queue_enqueue (nm_onesided_t p_onesided, struct nm_gate_s *p_gate, nm_onesided_queue_id_t queue, const void *p_ptr, nm_len_t len) |
enqueue a message in the given remote queue, blocking version More... | |
void * | nm_onesided_queue_dequeue (nm_onesided_t p_onesided, nm_onesided_queue_id_t queue) |
try to dequeue an entry from local queue; return NULL if queue is empty. More... | |
Enqueue messages remotely in receiver queue.
Queue creation is a local operation. Queue id is then transmited by the user. Remote enqueue has a local completion; it doesn't wait for remote completion. Upon error, messages are discarded.
typedef int nm_onesided_queue_id_t |
local id for a queue
Definition at line 117 of file nm_onesided_interface.h.
nm_onesided_queue_id_t nm_onesided_queue_create | ( | nm_onesided_t | p_onesided | ) |
create a local queue, accessible remotely
void * nm_onesided_queue_dequeue | ( | nm_onesided_t | p_onesided, |
nm_onesided_queue_id_t | queue | ||
) |
try to dequeue an entry from local queue; return NULL if queue is empty.
The caller takes ownership of data and must free it after use.
void nm_onesided_queue_enqueue | ( | nm_onesided_t | p_onesided, |
struct nm_gate_s * | p_gate, | ||
nm_onesided_queue_id_t | queue, | ||
const void * | p_ptr, | ||
nm_len_t | len | ||
) |
enqueue a message in the given remote queue, blocking version
void nm_onesided_queue_ienqueue | ( | nm_onesided_t | p_onesided, |
struct nm_gate_s * | p_gate, | ||
nm_onesided_queue_id_t | queue, | ||
const void * | p_ptr, | ||
nm_len_t | len, | ||
nm_onesided_request_t * | p_req | ||
) |
enqueue a message in the given remote queue, non-blocking version