gpt4 book ai didi

c++ - 在写入该变量的唯一线程中使用 memory_order_relaxed 加载原子变量是否安全?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:10:49 26 4
gpt4 key购买 nike

我有一个写入原子变量的线程。 (使用 memory_order_release)。 线程 A

还有许多其他线程读取该变量。 (使用 memory_order_acquire)。 线程 B

在线程 A 中使用 memory_order_relaxed 读取该变量是否安全?

最佳答案

是的,从某种意义上说它是安全的,因为它的行为与由单个线程操作的非原子变量相同。

例如,如果写释放在程序顺序中排在宽松读取之前,并且没有其他对该变量的写入,那么宽松读取将看到写入写入的值-发布(N3337 §1.10.12-13)。

关于c++ - 在写入该变量的唯一线程中使用 memory_order_relaxed 加载原子变量是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32791903/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com