?
本文檔使用 php中文網(wǎng)手冊 發(fā)布
在頭文件<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ù)命令對內(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
。否則,行為是不確定的。
這是為所有原子對象類型定義的通用函數(shù)A
。該參數(shù)是指向易失性原子類型的指針,以接受非易失性和易失性(例如內(nèi)存映射I/O)原子變量的地址。C
是與之對應(yīng)的非原子類型A
。
obj | - | 指向要訪問的原子對象的指針 |
---|---|---|
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) | 將值存儲在原子對象(函數(shù))中 |
---|
| 針對atomic_load,atomic_load_explicit |的C ++文檔