std::atomic_init
Defined in header <atomic> | | |
|---|---|---|
template< class T > void atomic_init( std::atomic<T>* obj, T desired ); | | (since C++11) |
template< class T > void atomic_init( volatile std::atomic<T>* obj, T desired ); | | (since C++11) |
初始化默认构造的原子对象。obj有价值desired函数不是原子的:来自另一个线程的并发访问,即使是通过原子操作,也是一种数据竞争。
如果obj不是默认构造的,行为是未定义的。
如果此函数在同一位置上被调用两次obj,该行为是未定义的。
参数
obj | - | pointer to an atomic object to initialize |
|---|---|---|
desired | - | the value to initialize atomic object with |
返回值
%280%29
例外
noexcept规格:
noexcept
注记
此功能是为了与C兼容而提供的。如果不需要兼容性,std::atomic可以通过它们的非默认构造函数初始化。
例
另见
ATOMIC_VAR_INIT (C++11) | constant initialization of an atomic variable of static storage duration (function macro) |
|---|---|
(constructor) | constructs an atomic object (public member function of std::atomic) |
C原子文档[医]依尼特
© cppreference.com在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

