Manual Pages


CK_ARRAY_PUT_UNIQUE(3)   BSD Library Functions Manual   CK_ARRAY_PUT_UNIQUE(3)

NAME
     ck_array_put_unique -- attempt immediate or deferred insertion of a
     unique pointer into array

LIBRARY
     Concurrency Kit (libck, -lck)

SYNOPSIS
     #include <ck_array.h>

     int
     ck_array_put_unique(ck_array_t *array, void *pointer);

DESCRIPTION
     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 opera-
     tion immediately if there is an opportunity for elimination with a pend-
     ing (uncommitted) remove operation. The function will not make any modi-
     fications if the pointer already exists in the array.

RETURN VALUES
     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.

SEE ALSO
     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