sig*_*sen 0 c++ multithreading interlocked shared-memory
我正在开发一个使用共享内存和互锁功能的系统.
我们假设我有volatile unsigned int n, a, b.我想原子地执行以下伪代码:
if (a <= n && n < b)
{
n++;
}
else
{
//Do nothing
}
Run Code Online (Sandbox Code Playgroud)
我该怎么办?你可以一起使用多个互锁功能吗?
您需要锁定或CAS类型操作.没有多少volatile可以帮助到这里.真正的原子数据类型也不会.
| 归档时间: |
|
| 查看次数: |
1647 次 |
| 最近记录: |