ck_hs_move — move one from hash set to another
Contents
Description
The ck_hs_move(3) function will initialize source from destination. The hash function is set to hash_cb,
comparison function to compare_cb and the allocator callbacks to m. Further modifications to source will
result in undefined behavior. Concurrent ck_hs_get(3) and ck_hs_fas(3) operations to source are legal
until the next write operation to destination.
This operation moves ownership from one hash set object to another and re-assigns callback functions to
developer-specified values. This allows for dynamic configuration of allocation callbacks and is
necessary for use-cases involving executable code which may be unmapped underneath the hash set.
Library
Concurrency Kit (libck, -lck)
Name
ck_hs_move — move one from hash set to another
Return Values
Upon successful completion ck_hs_move(3) returns true and otherwise returns false to indicate an error.
See Also
ck_hs_init(3), ck_hs_destroy(3), CK_HS_HASH(3), ck_hs_iterator_init(3), ck_hs_next(3), ck_hs_put(3), ck_hs_put_unique(3), ck_hs_set(3), ck_hs_fas(3), ck_hs_remove(3), ck_hs_grow(3), ck_hs_rebuild(3), ck_hs_gc(3), ck_hs_count(3), ck_hs_reset(3), ck_hs_reset_size(3), ck_hs_stat(3) Additional information available at http://concurrencykit.org/ July 18, 2013 CK_HS_MOVE(3)
Synopsis
#include<ck_hs.h>boolck_hs_move(ck_hs_t*destination, ck_hs_t*source, ck_hs_hash_cb_t*hash_cb,
ck_hs_compare_cb_t*compare_cb, structck_malloc*m);
