Quick Navigator

Search Site

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

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



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

store key-value pair into hash table

Concurrency Kit (libck, -lck)

#include <ck_ht.h>

ck_ht_set_spmc(ck_ht_t *ht, ck_ht_hash_t h, ck_ht_entry_t *entry);

The ck_ht_set_spmc() function will store the key-value pair specified in the entry argument in the hash table pointed to by the ht argument. The key specified in entry is expected to have the hash value specified by the h argument.

If ht was created with CK_HT_MODE_BYTESTRING then entry must have been initialized with the ck_ht_entry_set(3) function. If ht was created with CK_HT_MODE_DIRECT then entry must have been initialized with the ck_ht_entry_set_direct(3) function.

It is expected that h was initialized with ck_ht_hash(3) if ht was created with CK_HT_MODE_BYTESTRING. If ht was initialized with CK_HT_MODE_DIRECT then it is expected that h was initialized with the ck_ht_hash_direct(3) function.

If the call to ck_ht_set_spmc() was successful then the key-value pair in entry will contain the previous key-value pair associated with the key originally contained in the entry argument. If the operation was unsuccessful then entry is unmodified.

This function is safe to call in the presence of concurrent ck_ht_get_spmc operations.

Upon successful completion ck_ht_set_spmc() returns true and otherwise returns false on failure.

Behavior is undefined if entry or ht are uninitialized. The function will return false if the hash table required to be grown but failed while attempting to grow.

ck_ht_stat(3), ck_ht_init(3), ck_ht_destroy(3), ck_ht_hash(3), ck_ht_hash_direct(3), ck_ht_put_spmc(3), ck_ht_gc(3), ck_ht_get_spmc(3), ck_ht_grow_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

March 29, 2012

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.