Provided by: libck-dev_0.6.0-1_amd64 bug

NAME

     ck_ht_get_spmc — load a key-value pair from a hash table

LIBRARY

     Concurrency Kit (libck, -lck)

SYNOPSIS

     #include <ck_ht.h>

     bool
     ck_ht_get_spmc(ck_ht_t *ht, ck_ht_hash_t h, ck_ht_entry_t *entry);

DESCRIPTION

     The ck_ht_get_spmc() function will return the value associated with the key 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_key(3) or ck_ht_entry_set(3) functions. If ht was created with
     CK_HT_MODE_DIRECT then entry must have been initialized with the
     ck_ht_entry_key_set_direct(3) or ck_ht_entry_set_direct(3) functions.

     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_get_spmc() was successful then the key-value pair in entry was
     successfully found in the hash table pointed to by h and will fail if the key specified in
     entry does not exist in the hash table. If successful entry will contain the key-value pair
     found in the hash table pointed to by the ht argument.

     If ht was initialized with CK_HT_MODE_BYTESTRING then the key/value pair in entry may be
     extracted using the ck_ht_entry_key(3) and ck_ht_entry_value(3) functions. The length of the
     key may be extracted using the ck_ht_entry_key_length(3) function.

     If ht was initialized with CK_HT_MODE_DIRECT then the key/value pair in entry may be
     extracted using the ck_ht_entry_key_direct(3) and ck_ht_entry_value_direct(3) functions.

     This function is safe to call in the presence of a concurrent writer.

RETURN VALUES

     Upon successful completion ck_ht_get_spmc() returns true. If successful, entry will contain
     the key/value pair as found in the hash table.  Otherwise the function returns false on
     failure.

ERRORS

     Behavior is undefined if entry or ht are uninitialized. The function will return false if
     the key as specified in entry was not found in the hash table.

SEE ALSO

     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_gc(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 http://concurrencykit.org/

                                          March 29, 2012