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


Manual Reference Pages  -  CK_HT_PUT_SPMC (3)

NAME

ck_ht_put_spmc - store unique key-value pair into hash table

CONTENTS

Library
Synopsis
Description
Return Values
Errors
See Also

LIBRARY

Concurrency Kit (libck, -lck)

SYNOPSIS


.In 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/

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 manServer 1.07.