Provided by: libck-dev_0.6.0-1_amd64
ck_array_put_unique — attempt immediate or deferred insertion of a unique pointer into array
Concurrency Kit (libck, -lck)
#include <ck_array.h> int ck_array_put_unique(ck_array_t *array, void *pointer);
The ck_array_put_unique(3) function will attempt to insert the value of pointer into the array pointed to by array. This function may incur additional memory allocations if not enough memory has been allocated in the array for a new entry. The operation is also free to apply the operation immediately if there is an opportunity for elimination with a pending (uncommitted) remove operation. The function will not make any modifications if the pointer already exists in the array.
This function returns 1 if the pointer already exists in the array. It returns 0 if the put operation succeeded. It returns -1 on error due to internal memory allocation failures.
ck_array_init(3), ck_array_commit(3), ck_array_put(3), ck_array_remove(3), ck_array_deinit(3) ck_array_length(3), ck_array_buffer(3), ck_array_initialized(3), CK_ARRAY_FOREACH(3) Additional information available at http://concurrencykit.org/ October 18, 2013