は:std :: lock_guardをインターラプトすることはできますか?私のようなlock_guardの下にいくつかのコードをお持ちの場合
std::thread t([&]()
{
std::lock_guard<std::mutex> lock(m);
// some simple operations
});
私は「一部の操作は、」t
スレッドが実行されている。このコアCPUに割り込まれないことを保証を持っていますか? lock_guardの後にコンテキスト切り替えができますか?
スレッドとミューテックスについて考えてみましょう。 –
あなたの*プログラム*は操作を中断しません。 @Biagio Festa。 –
私に尋ねますか? OK、私は答えるでしょう...この構造は、 "いくつかの単純な操作"の間に競合状態が存在しないことを保証しますが、スレッドがブロックされているかどうか疑問です。(つまり、操作はこのCPUコアで中断することなく実行されます。 ) – peter55555