ck_pr_store_ptr, ck_pr_store_double, ck_pr_store_uint, ck_pr_store_int, ck_pr_store_char, ck_pr_store_64,
Contents
Description
The ck_pr_store(3) family of functions atomically stores the value specified by value into the location
pointed to by target. This family of functions always serves as an implicit compiler barrier and is not
susceptible to compiler re-ordering.
Library
Concurrency Kit (libck, -lck)
Name
ck_pr_store_ptr, ck_pr_store_double, ck_pr_store_uint, ck_pr_store_int, ck_pr_store_char, ck_pr_store_64,
ck_pr_store_32, ck_pr_store_16, ck_pr_store_8 — atomic volatile store operations
Return Values
This family of functions has no return value.
See Also
ck_pr_fence_load(3), ck_pr_fence_load_depends(3), ck_pr_fence_store(3), ck_pr_fence_memory(3), ck_pr_add(3), ck_pr_load(3), ck_pr_fas(3), ck_pr_faa(3), ck_pr_inc(3), ck_pr_dec(3), ck_pr_neg(3), ck_pr_not(3), ck_pr_sub(3), ck_pr_and(3), ck_pr_or(3), ck_pr_xor(3), ck_pr_cas(3), ck_pr_btc(3), ck_pr_bts(3), ck_pr_btr(3) Additional information available at http://concurrencykit.org/ April 15, 2013 ck_pr_store(3)
Synopsis
#include<ck_pr.h>voidck_pr_store_ptr(void*target, void*value);
voidck_pr_store_double(double*target, doublevalue);
voidck_pr_store_uint(unsignedint*target, unsignedintvalue);
voidck_pr_store_int(int*target, intvalue);
voidck_pr_store_char(char*target, charvalue);
voidck_pr_store_64(uint64_t*target, uint64_tvalue);
voidck_pr_store_32(uint32_t*target, uint32_tvalue);
voidck_pr_store_16(uint16_t*target, uint16_tvalue);
voidck_pr_store_8(uint8_t*target, uint8_tvalue);
