Man page - ck_hs_move(3)

Packages contains this manual

Manual


NAME

ck_hs_move — move one from hash set to another

LIBRARY

Concurrency Kit (libck, -lck)

SYNOPSIS

#include <ck_hs.h>

bool

ck_hs_move ( ck_hs_t *destination , ck_hs_t *source , ck_hs_hash_cb_t *hash_cb , ck_hs_compare_cb_t *compare_cb , struct ck_malloc *m );

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.

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)