GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
CK_RHS_MOVE(3) FreeBSD Library Functions Manual CK_RHS_MOVE(3)

ck_rhs_move
move one from hash set to another

Concurrency Kit (libck, -lck)

#include <ck_rhs.h>

bool
ck_rhs_move(ck_rhs_t *destination, ck_rhs_t *source, ck_rhs_hash_cb_t *hash_cb, ck_rhs_compare_cb_t *compare_cb, struct ck_malloc *m);

The ck_rhs_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_rhs_get(3) and ck_rhs_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.

Upon successful completion ck_rhs_move(3) returns true and otherwise returns false to indicate an error.

ck_rhs_init(3), ck_rhs_destroy(3), CK_RHS_HASH(3), ck_rhs_iterator_init(3), ck_rhs_next(3), ck_rhs_put(3), ck_rhs_put_unique(3), ck_rhs_set(3), ck_rhs_fas(3), ck_rhs_remove(3), ck_rhs_grow(3), ck_rhs_rebuild(3), ck_rhs_gc(3), ck_rhs_count(3), ck_rhs_reset(3), ck_rhs_reset_size(3), ck_rhs_stat(3)

Additional information available at http://concurrencykit.org/

July 18, 2013

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.