2
の場合std::atomic<int>
どうすれば原子的に値をロードして0
にリセットできますか?したがって、私がこの操作を2つのスレッドから実行すると、1つの受信値だけが受信され、別のスレッドは0
を受信するはずです。std :: atomic <int> - ロードして原子的に0にリセットしますか?
の場合std::atomic<int>
どうすれば原子的に値をロードして0
にリセットできますか?したがって、私がこの操作を2つのスレッドから実行すると、1つの受信値だけが受信され、別のスレッドは0
を受信するはずです。std :: atomic <int> - ロードして原子的に0にリセットしますか?
std::atomic<int> x = 1;
int y = x.exchange(0);
あなたは達成したいもののための擬似コードを置くことができますか? – Arunmu
['exchange'](http://en.cppreference.com/w/cpp/atomic/atomic/exchange)を使用できますか?両方のスレッドに 'int result = atomic_value.exchange(0)'を実行させてください。 – Cornstalks