?
This document uses PHP Chinese website manual Release
在頭文件<stdatomic.h>中定義 | ||
---|---|---|
C atomic_load(const volatile A * obj); | (1) | (自C11以來) |
C atomic_load_explicit(const volatile A * obj,memory_order order); | (2) | (自C11以來) |
以原子方式加載并返回指向的原子變量的當(dāng)前值obj
。該操作是原子讀取操作。
第一個(gè)版本根據(jù)命令對(duì)內(nèi)存進(jìn)行訪問memory_order_seq_cst
,第二個(gè)版本根據(jù)內(nèi)存訪問內(nèi)存訪問order
。order
必須是一個(gè)memory_order_relaxed
,memory_order_consume
,memory_order_acquire
或memory_order_seq_cst
。否則,行為是不確定的。
這是為所有原子對(duì)象類型定義的通用函數(shù)A
。該參數(shù)是指向易失性原子類型的指針,以接受非易失性和易失性(例如內(nèi)存映射I/O)原子變量的地址。C
是與之對(duì)應(yīng)的非原子類型A
。
obj | - | 指向要訪問的原子對(duì)象的指針 |
---|---|---|
order | - | 此操作的內(nèi)存同步排序 |
指向的原子變量的當(dāng)前值obj
。
C11標(biāo)準(zhǔn)(ISO/IEC 9899:2011):
7.17.7.2 atomic_load泛型函數(shù)(p: 282)
atomic_storeatomic_store_explicit(C11) | 將值存儲(chǔ)在原子對(duì)象(函數(shù))中 |
---|
| 針對(duì)atomic_load,atomic_load_explicit |的C ++文檔