#include <stdio.h>
int main() {
while(!DONE) {
/* check for stuff */
}
return 0;
}
上記のコードサンプルでは、DONEがtrueになるまで100%CPUを使用しています。どのようにループし、完了時に終了するが、100%CPUを使用しないプログラムを実装できますか? 現代の言語では、App.ProcessMessagesなどのものを使用して、OSにその時点の制御を与えてからループに戻ることができます。C 100%cpuなしのメインループ
I(ポータブルソリューションは、素晴らしいことだ!)最新のGCC、LinuxとWindowsを使用して、明らかにC、...で新たなんだ
を推測十分だろうです。 –
'DONE'とは何で、何がゼロ以外になるのでしょうか?恐らく、 'stuff for check'がDONEを非ゼロに設定する何かを評価するまで、処理を続けるのは理にかなっていますか? –
Lasse V. Karlsen: あなたのソリューションは理にかなっているようです(おそらくそれほど意味がありますが、その知識はありません)。あなたは詳細を教えていただけますか?スレッドを調べるべきですか? Charles Bailey: DONEは、(DONEの代わりに)intにする必要があり、ユーザーがアプリを終了するときに1に設定されます。 十分に説明できないのであれば申し訳ありません。 – pwseo