ck_ht_grow_spmc - Man Page
resize a hash table if necessary
Library
Concurrency Kit (libck, -lck)
Synopsis
#include <ck_ht.h
>
bool
ck_ht_grow_spmc
(ck_ht_t *ht, uint64_t capacity);
Description
The ck_ht_grow_spmc
() function will resize the hash table in order to be able to at least store the number of entries specified by capacity at a load factor of one. The default load hash table load factor is 0.5. If you wish to minimize the likelihood of memory allocations for a hash table meant to store n entries then specify a capacity of 2n. The default behavior of ck_ht is to round capacity to the next available power of two if it is not already a power of two.
This function is safe to call in the presence of concurrent ck_ht_get_spmc(3) operations.
Return Values
Upon successful completion ck_ht_grow_spmc
() returns true
and otherwise returns a false
value.
Errors
Behavior is undefined if ht is uninitialized. The function will only return false
if there are internal memory allocation failures.
See Also
ck_ht_stat(3), ck_ht_init(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_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/
Referenced By
ck_ht_count(3), ck_ht_destroy(3), ck_ht_entry_empty(3), ck_ht_entry_key(3), ck_ht_entry_key_direct(3), ck_ht_entry_key_length(3), ck_ht_entry_key_set(3), ck_ht_entry_key_set_direct(3), ck_ht_entry_set(3), ck_ht_entry_set_direct(3), ck_ht_entry_value(3), ck_ht_entry_value_direct(3), ck_ht_gc(3), ck_ht_get_spmc(3), ck_ht_hash(3), ck_ht_hash_direct(3), ck_ht_init(3), ck_ht_iterator_init(3), ck_ht_next(3), ck_ht_put_spmc(3), ck_ht_remove_spmc(3), ck_ht_reset_size_spmc(3), ck_ht_reset_spmc(3), ck_ht_set_spmc(3), ck_ht_stat(3).