1CK_ARRAY_PUT_UNIQUE(3) BSD Library Functions Manual CK_ARRAY_PUT_UNIQUE(3)
2
4 ck_array_put_unique — attempt immediate or deferred insertion of a unique
5 pointer into array
6
8 Concurrency Kit (libck, -lck)
9
11 #include <ck_array.h>
12
13 int
14 ck_array_put_unique(ck_array_t *array, void *pointer);
15
17 The ck_array_put_unique(3) function will attempt to insert the value of
18 pointer into the array pointed to by array. This function may incur
19 additional memory allocations if not enough memory has been allocated in
20 the array for a new entry. The operation is also free to apply the opera‐
21 tion immediately if there is an opportunity for elimination with a pend‐
22 ing (uncommitted) remove operation. The function will not make any modi‐
23 fications if the pointer already exists in the array.
24
26 This function returns 1 if the pointer already exists in the array. It
27 returns 0 if the put operation succeeded. It returns -1 on error due to
28 internal memory allocation failures.
29
31 ck_array_init(3), ck_array_commit(3), ck_array_put(3),
32 ck_array_remove(3), ck_array_deinit(3) ck_array_length(3),
33 ck_array_buffer(3), ck_array_initialized(3), CK_ARRAY_FOREACH(3)
34
35 Additional information available at http://concurrencykit.org/
36
37 October 18, 2013