ほとんどスリープ状態の CLI スクリプトを実行しています。スクリプトは約 10 秒ごとに何かを実行します。問題は、スリープ中にスクリプトが 94% の CPU 使用率で座っていることです。
私が設定した方法は次のとおりです。
while(1){
sleep(10);
doStuff();
}
これは意図したとおりに機能しますが、明らかな問題があります。C++/Java では、ループの問題を解消するタイマーを設定するだけで済みました。また、cronジョブが必要ないことを望んでいました。
これを行う別の方法はありますか?
アップデート
どうやら私の元のスクリプト (かなり大きい) は実際にはスリープ モードに入らなかったため、while ループが実行されて CPU サイクルが中断され、消費されました。同じ問題を抱えている人は、そうではないことを確認してください。