![]() |
![]()
| ![]() |
![]()
NAME
LIBRARYConcurrency Kit (libck, -lck) SYNOPSIS
typedef void
bool
DESCRIPTIONThe
The argument mode specifies the type of key-value pairs to be stored in the hash table. The value of mode may be one of:
In addition to this, the user may bitwise OR the mode flag with
CK_HT_WORKLOAD_DELETE to indicate that the hash table will have to handle a
delete heavy workload, in which case stronger bounds on latency can be
provided at the cost of approximately 13% higher memory usage. The argument
hash_function is a pointer to a user-specified hash
function. It is optional, if The allocator argument is a pointer to a structure containing malloc and free function pointers which respectively define the memory allocation and destruction functions to be used by the hash table being initialized. The argument capacity represents the initial number of key-value pairs the hash table is expected to contain. This argument is simply a hint and the underlying implementation is free to allocate more or less memory than necessary to contain the number of entries capacity specifies. The argument seed specifies the initial seed used by the underlying hash function. The user is free to choose a value of their choice. The hash table is safe to access by multiple readers in the presence of one concurrent writer. Behavior is undefined in the presence of concurrent writers. RETURN VALUESUpon successful completion ERRORSThe behavior of SEE ALSOck_ht_stat(3), ck_ht_destroy(3), ck_ht_hash(3), ck_ht_hash_direct(3), ck_ht_set_spmc(3), ck_ht_put_spmc(3), ck_ht_gc(3), ck_ht_get_spmc(3), ck_ht_grow_spmc(3), ck_ht_remove_spmc(3), ck_ht_reset_spmc(3), ck_ht_reset_size_spmc(3), ck_ht_count(3), ck_ht_entry_empty(3), ck_ht_entry_key_set(3), ck_ht_entry_key_set_direct(3), ck_ht_entry_key(3), ck_ht_entry_key_length(3), ck_ht_entry_value(3), ck_ht_entry_set(3), ck_ht_entry_set_direct(3), ck_ht_entry_key_direct(3), ck_ht_entry_value_direct(3), ck_ht_iterator_init(3), ck_ht_next(3) Additional information available at http://concurrencykit.org/
|