r6.0.0:lfds600_queue_enqueue

From liblfds.org
Jump to navigation Jump to search

Source Files

/liblfds600/src/lfds600_queue/lfds600_queue_queue.c
/liblfds600/inc/liblfds600.h

Prototype

int lfds600_queue_enqueue( struct lfds600_queue_state *qs, void *user_data );

Parameters

struct lfds600_queue_state *qs

A queue state as allocated by lfds600_queue_new.

void *user_data

A void pointer of user data which will be queued into the queue.

Return Value

Returns 1 on a successful enqueue. Returns 0 if enqueing failed. Enqueuing only fails if the queue has exhausted its supply of freelist elements. In this case, the user can call lfds600_queue_guaranteed_enqueue, which will allocate a new element and enqueue using that. Remember however that the queue can never shrink, so any such call will permanently increase the size of the queue by one element.

Notes

No notes.

See Also