1

当たり前のように思えますが、これが保証されているかどうかを確認したかっただけです(Linuxの場合)。待機条件が満たされるまで、スレッドはスケジューリングから除外されていますか?または、スレッドがスケジュールされ、まだ待機中であることを確認し、yield()を再度実行して、リソースを浪費しますか?

私が尋ねている理由は、Xスレッドを実行していて、何らかの理由で一部のスレッドがブロックされている場合、ブロックされたスレッドが実行可能なスレッドの邪魔になるのでしょうか(同じ優先順位であると仮定して)?

4

1 に答える 1

2

はい、CPUリソースを消費せずに待機します。スピンロックだけがビジーウェイトを行います。

于 2013-01-17T02:45:53.557 に答える