CK_PR_FENCE_RELEASE(3)
β¨ CK_PR_FENCE_RELEASE β¨
okay bestie, welcome to the ck_pr_fence_release page from the Concurrency Kit man pages π this one's a lil baby function but she is IMPORTANT, i promise.
π NAME π
ck_pr_fence_release β enforce release semantics π¦
like. that's the whole name. that's the whole job. slay.
π LIBRARY π
Concurrency Kit, aka libck β you link it with -lck π«Ά
πΈ SYNOPSIS πΈ
#include <ck_pr.h>
void
ck_pr_fence_release(void);
no args, no drama, just vibes π
π DESCRIPTION π
okay so here's the tea, bestie β ck_pr_fence_release enforces the partial ordering of two specific things:
- any loads that happen prior to invocation of this function, with respect to any stores that come after it
- any stores that happen prior to invocation, with respect to any stores that come after it
that's it. that's the whole function. no cap. it's giving "i just do one thing and i do it flawlessly" π
β RETURN VALUES β
she returns nothing. void. no return value at all. she's not here to give you answers, she's here to give you ordering ππ
π SEE ALSO π
the whole girlies, all together, one big friend group π«Ά:
ck_pr_stall(3)ck_pr_fence_atomic(3)ck_pr_fence_atomic_store(3)ck_pr_fence_atomic_load(3)ck_pr_fence_acquire(3)ck_pr_fence_store(3)ck_pr_fence_memory(3)ck_pr_barrier(3)ck_pr_fas(3)ck_pr_load(3)ck_pr_store(3)ck_pr_faa(3)ck_pr_inc(3)ck_pr_dec(3)ck_pr_neg(3)ck_pr_not(3)ck_pr_add(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)
and if you want even more lore, there's additional information available at http://concurrencykit.org/ β¨
π quick reminder bestie: fencing is not a game, this is real memory-ordering behaviour, use it with intention okay?? i love you.
and that's the whole page!! π this one was dated January 2, 2014, and she lives in the CK_PR_FENCE_RELEASE(3) section of the Concurrency Kit manual, so you can always find her again by name π bye babes, go order some memory correctly π β¨
π¦ where this page comes from
- alpine 3.24: ck-doc 0.7.2-r1 Β· BSD-2-Clause AND Apache-2.0
- debian bookworm: libck-dev 0.7.1-10 Β· BSD-2-Clause
- debian trixie: libck-dev 0.7.2-6 Β· BSD-2-Clause
- epel 10: ck-devel 0.7.2-1.el10_1 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- epel 9: ck-devel 0.7.0-10.el9 Β· BSD
- fedora 43: ck-devel 0.7.2-2.fc43 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- fedora 43: ck-devel 0.7.2-2.fc43 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- fedora 44: ck-devel 0.7.2-4.fc44 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- fedora 44: ck-devel 0.7.2-4.fc44 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- nixos 26.05: ck 0.7.2
- nixpkgs unstable: ck 0.7.2
- opensuse-leap 16.0: ck-devel 0.7.2-bp160.1.9 Β· Apache-2.0 AND BSD-2-Clause
- opensuse-leap 16.0: ck-devel 0.7.2-bp160.1.9 Β· Apache-2.0 AND BSD-2-Clause
- opensuse-leap 16.0: ck-devel 0.7.2-bp160.1.9 Β· Apache-2.0 AND BSD-2-Clause
- ubuntu jammy: libck-dev 0.7.1-6ubuntu2 Β· BSD-2-Clause
- ubuntu noble: libck-dev 0.7.1-13build1 Β· BSD-2-Clause
- ubuntu questing: libck-dev 0.7.2-5ubuntu1
- ubuntu resolute: libck-dev 0.7.2-5ubuntu2 Β· BSD-2-Clause
- ubuntu stonking: libck-dev 0.7.2-11 Β· BSD-2-Clause
- Copyright 2014 Samy Al Bahra
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms