Provided by: libck-dev_0.7.2-5ubuntu1_amd64 bug

NAME

       ck_ht_put_spmc — store unique key-value pair into hash table

LIBRARY

       Concurrency Kit (libck, -lck)

SYNOPSIS

       #include <ck_ht.h>

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

DESCRIPTION

       The  ck_ht_put_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_put_spmc() was successful then the key-value pair in entry was  successfully  stored
       in the hash table pointed to by ht and will fail if the key specified in entry already exists with-in the
       hash table. Replacement semantics are provided by the ck_ht_set_spmc(3) function.

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

RETURN VALUES

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

ERRORS

       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 or if the key specified  in  entry  was  already
       present 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_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 http://concurrencykit.org/

                                                 March 29, 2012                                CK_HT_PUT_SPMC(3)