|
NAMEck_ht_gc —
perform maintenance on a hash table
LIBRARYConcurrency Kit (libck, -lck)SYNOPSIS#include <ck_ht.h>
bool
DESCRIPTIONTheck_ht_gc () function will perform various maintenance
routines on the hash table pointed to by ht, including
defragmentation of probe sequences with respect to tombstones and in the case
that the delete workload hint has been passed, recalculation of probe sequence
bounds. The cycles argument is used to indicate how many
hash table entries should be subject to attempted maintenance. If
cycles is 0, then maintenance is performed on the
complete hash table. The seed argument determines the
start location of the maintenance process. If cycles is
non-zero, it is recommended that seed is some random
value. If the delete hint has been passed, the function will require an
additional 12% of memory (with respect to existing memory usage of the set),
until operation completion.
RETURN VALUESUpon successful completion,ck_ht_gc (3) returns true and
otherwise returns false on failure due to memory allocation failure.
ERRORSThis function will only return false if there are internal memory allocation failures.SEE ALSOck_ht_count(3), 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_get_spmc(3), ck_ht_grow_spmc(3), ck_ht_remove_spmc(3), ck_ht_reset_size_spmc(3), ck_ht_reset_spmc(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/
Visit the GSP FreeBSD Man Page Interface. |