次の問題があります。毎分実行されるプログラムが必要です。これは、python の time-module と無限の while-loop を使用して行うことができました。次のようになります。
while True:
time_now = tm.gmtime(tm.time())
min_now = time_now.tm_min
if min_now - min_then == 1 or min_now - min_then == -59:
min_then = min_now
......
ループは 1 秒間に約 150.000 回実行されます。一般的なパフォーマンスが損なわれることはないと思いますが、代替手段があるかどうかは疑問です。
while ループの再実行回数を変更できますか? それとも、アルゴリズム (アセンブラー、マシンコードなど) は、終了時に最初に戻るだけですか? 「待機」コマンドのようなものを使用できますか?それは役に立ちますか?
聞いてくれて (そして答えてくれてありがとう ;) ),
幸運をお祈りしています、
マックス
編集:
-sleep
コマンドは確かに私の問題を解決しました。再放送は 1 時間ごとに行わなければならないことを忘れてしまいました。60 秒間のスリープは満足のいくものではありませんが、Xi Huan のリンクに記載されている方法を使用しました。ループの実行後、sleep(59.9-time_now.tm_sec)
. これにより、CPU 使用率が 1% に減少します。優秀な。そして: 皆様、ご協力ありがとうございました! 私はあなたに賛成票を投じたいのですが、私には十分な評判がありません:D sry
さよなら!