ck_array_put_unique(3) attempt immediate or deferred insertion of a unique pointer into array


Concurrency Kit (libck, -lck)


In ck_array.h Ft int Fn ck_array_put_unique ck_array_t *array void *pointer


The Fn ck_array_put_unique 3 function will attempt to insert the value of Fa pointer into the array pointed to by Fa 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.