Man page - ck_ht_grow_spmc(3)

Packages contains this manual

Manual


NAME

ck_ht_grow_spmc — 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/ March 29, 2012 CK_HT_GROW_SPMC (3)