ATOMIC_VAR_INIT
原子[医]瓦尔[医]依尼特
Defined in header | | |
---|---|---|
#define ATOMIC_VAR_INIT(value) /* implementation-defined */ | | |
展开为可用于初始化std::atomic
对象,该对象可以从value
如果原子对象具有静态存储持续时间,则此初始化为常数初始化...
注记
从另一个线程(即使是通过原子操作)在初始化期间访问变量是数据争用%28--如果地址立即传递到另一个具有std::memory_order_relaxed
行动%29。
此宏主要是为了与C兼容而提供的;它的行为与std::atomic
...
例
二次
#include <atomic>
#include <iostream>
int main()
{
std::atomic<int> a = ATOMIC_VAR_INIT(1
// std::atomic<int> a(1 // C++-only alternative
std::cout << "Initialized std::atomic<int> as: " << a << '\n';
}
二次
产出:
二次
Initialized std::atomic<int> as: 1
二次
另见
atomic_init (C++11) | non-atomic initialization of a default-constructed atomic object (function template) |
---|---|
(constructor) | constructs an atomic object (public member function of std::atomic) |
© cppreference.com
在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。