sig_atomic_t和std::atomic<>可以互换吗?
Are sig_atomic_t and std::atomic<> interchangable?
按标题。我可以在信号处理程序中使用std::atomic<>
或sig_atomic_t
提供其他编译器功能吗?
n3376 1.9/6
当抽象机的处理被接收到一个信号而中断时,对象的值既不是
-类型volatile std::sig_atomic_t nor
-无锁原子对象
是在信号处理程序执行期间未指定的,并且不属于
锁定29.4/1,2
ATOMIC_……_LOCK_FREE宏表示相应原子类型的无锁属性有符号和无符号变体组合在一起。这些属性也适用于相应的(部分)原子模板的专门化。值为0表示该类型永远不会无锁。的值1表示这些类型有时是无锁的。如果值为2,则表示该类型总是无锁的。
函数atomic_is_lock_free(29.6)表示对象是否无锁。在任何给定的程序中
相关文章:
- 如何从 std::atomic 中提取指针 T<T>?
- std::atomic和std::condition_variable wait,notify_*方法之间的区别
- std::memory_order for std::atomic:<T>:wait
- MESI协议和std::atomic-它是否确保所有写入立即对其他线程可见?
- 在 lambda 表达式中使用 std::atomic
- C++std::atomic在程序员级别保证了什么
- 如果在 2 个线程中使用,是否值得将size_t声明为 std::atomic?
- MyType 允许 std::atomic 的确切要求是什么<MyType>?
- 无法将类型"T&"的非常量左值引用绑定到类型"T"的右值 t++ std::atomic<T>
- gcc Atomic在gcc 4.1.1中内置了奇怪的行为
- 在 C++20 之前和之后初始化 std::atomic
- Red Hat:使用<atomic>编译很好,但链接器找不到__atomic_store_16;什么库?
- std::atomic 和 std::mutex 的相对性能
- 使用用户定义的类型 UDT 实例化 std::atomic<>。如果 UDT 具有虚函数,则 l 墨水将失败。为什么?
- 简单使用 std::atomic 在两个线程之间共享数据
- Port pthread_cond_broadcast to std::atomic
- std::atomic中的任何内容都是免费等待的
- 对于 CPU 无法原子操作的类型,std::atomic 有什么意义?
- 在 atomic() 中 ++、add operation 和 fetch_add() 有什么区别
- sig_atomic_t和std::atomic<>可以互换吗?