---
name: "ck_pr_fence_acquire"
section: "3"
platform: "linux"
package: "libck-dev"
version: "0.7.2-6"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ck_pr_fence_acquire"
---

# ck\_pr\_fence\_acquire(3)

enforce acquire semantics

## NAME

**ck\_pr\_fence\_acquire** – enforce acquire semantics

## LIBRARY

Concurrency Kit (libck, -lck)

## SYNOPSIS

**#include \<ck\_pr.h\>**

*void*\

**ck\_pr\_fence\_acquire**(*void*);

## DESCRIPTION

This function enforces the partial ordering of any loads prior to invocation with respect to any following stores, loads and atomic operations. It is typically used to implement critical sections.

## RETURN VALUES

This function has no return value.

## SEE ALSO

[ck\_pr\_stall(3)](/ck_pr_stall/3.md), [ck\_pr\_fence\_atomic(3)](/ck_pr_fence_atomic/3.md), [ck\_pr\_fence\_atomic\_store(3)](/ck_pr_fence_atomic_store/3.md), [ck\_pr\_fence\_atomic\_load(3)](/ck_pr_fence_atomic_load/3.md), [ck\_pr\_fence\_release(3)](/ck_pr_fence_release/3.md), [ck\_pr\_fence\_store(3)](/ck_pr_fence_store/3.md), [ck\_pr\_fence\_memory(3)](/ck_pr_fence_memory/3.md), [ck\_pr\_barrier(3)](/ck_pr_barrier/3.md), [ck\_pr\_fas(3)](/ck_pr_fas/3.md), [ck\_pr\_load(3)](/ck_pr_load/3.md), [ck\_pr\_store(3)](/ck_pr_store/3.md), [ck\_pr\_faa(3)](/ck_pr_faa/3.md), [ck\_pr\_inc(3)](/ck_pr_inc/3.md), [ck\_pr\_dec(3)](/ck_pr_dec/3.md), [ck\_pr\_neg(3)](/ck_pr_neg/3.md), [ck\_pr\_not(3)](/ck_pr_not/3.md), [ck\_pr\_add(3)](/ck_pr_add/3.md), [ck\_pr\_sub(3)](/ck_pr_sub/3.md), [ck\_pr\_and(3)](/ck_pr_and/3.md), [ck\_pr\_or(3)](/ck_pr_or/3.md), [ck\_pr\_xor(3)](/ck_pr_xor/3.md), [ck\_pr\_cas(3)](/ck_pr_cas/3.md), [ck\_pr\_btc(3)](/ck_pr_btc/3.md), [ck\_pr\_bts(3)](/ck_pr_bts/3.md), [ck\_pr\_btr(3)](/ck_pr_btr/3.md)

Additional information available at http://concurrencykit.org/
