09/09/08 23:27:18
>>834
レスありがとうございます。
非同期な処理要求がガンガン発生するケースについては分かりました。
ただ、もし処理要求がまったく発生していないアイドル状態の時、
サービススレッドは処理要求の発生をどのように待っているのでしょうか?
たとえば、以下のようなループを組むとか考えたのですが、
while (queue.empty) yield(); /* yield()は他のスレッドへ制御を移す関数 */
システムはアイドル状態にもかかわらず、スレッドがCPUを浪費してしまいます。
Wait-freeライブラリ(?)の中で、新たな処理要求が発生するまで
サービススレッドをwaitさせてくれるような仕掛けが実装されているのでしょうか?