ck_ht_grow_spmc (3) - Linux Manuals

ck_ht_grow_spmc: resize a hash table if necessary


ck_ht_grow_spmc - resize a hash table if necessary


Concurrency Kit (libck, -lck)


In ck_ht.h Ft bool Fn ck_ht_grow_spmc ck_ht_t *ht uint64_t capacity


The Fn 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 Fa 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 Fa 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_spmc3 operations.


Upon successful completion Fn ck_ht_grow_spmc returns true and otherwise returns a false value.


Behavior is undefined if Fa ht is uninitialized. The function will only return false if there are internal memory allocation failures.


ck_ht_stat3, ck_ht_init3, ck_ht_destroy3, ck_ht_hash3, ck_ht_hash_direct3, ck_ht_set_spmc3, ck_ht_put_spmc3, ck_ht_gc3, ck_ht_get_spmc3, ck_ht_remove_spmc3, ck_ht_reset_spmc3, ck_ht_reset_size_spmc3, ck_ht_count3, ck_ht_entry_empty3, ck_ht_entry_key_set3, ck_ht_entry_key_set_direct3, ck_ht_entry_key3, ck_ht_entry_key_length3, ck_ht_entry_value3, ck_ht_entry_set3, ck_ht_entry_set_direct3, ck_ht_entry_key_direct3, ck_ht_entry_value_direct3, ck_ht_iterator_init3, ck_ht_next3

Additional information available at