DOKK / manpages / debian 12 / libck-dev / ck_array_init.3.en
CK_ARRAY_INIT(3) Library Functions Manual CK_ARRAY_INIT(3)

ck_array_initinitialize a pointer array

Concurrency Kit (libck, -lck)

#include <ck_array.h>

bool
ck_array_init(ck_array_t *array, unsigned int mode, struct ck_malloc *allocator, unsigned int initial_length);

The (3) function initializes the array pointed to by the argument array. The mode value must be CK_ARRAY_MODE_SPMC. The allocator argument must point to a ck_malloc data structure with valid non-NULL function pointers initialized for malloc, free and realloc. The initial_length specifies the initial length of the array. The value of initial_length must be greater than or equal to 2. An array allows for one concurrent put or remove operations in the presence of any number of concurrent CK_ARRAY_FOREACH operations.

This function returns true if the array was successfully created. It returns false if the creation failed. Failure may occur due to internal memory allocation failures or invalid arguments.

ck_array_commit(3), ck_array_put(3), ck_array_put_unique(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