gpt4 book ai didi

c - 原子 if(A && B)?

转载 作者:行者123 更新时间:2023-11-30 21:15:01 27 4
gpt4 key购买 nike

有没有办法用连词创建原子 if ?也就是说,我可以以某种方式在 C 中自动测试 if(A && B) 吗?如果它在第一个连接处短路,那么没问题,但如果没有短路,则在检查 B 时,A 可能已更改。有什么想法吗?

编辑:不使用粗锁或信号量。

最佳答案

您必须手动同步对两个对象的访问!您还希望发生什么情况?

这是并行编程的基本思想,一次可以发生两件事,除非你自己这样做。

伪代码示例:

//Comparison:
{
lock(Amutex);
lock(Bmutex);
bool result = A && B;
unlock(Amutex);
unlock(Bmutex);

if (result) // ...
}

//assignment:
{
lock(Amutex);
A = val;
unlock(Amutex);
}

关于c - 原子 if(A && B)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14521087/

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