1

多くの計算作業を行い、リソースを大量に消費するスクリプトがあります。スクリプトを実行しているとき (通常、完了するまでに数時間かかります)、マシンが停止してしまうため、ほとんどマシンを使用できません。

昔の VB プログラミングではyield()、メモリを大量に消費するルーチンを適切に処理し、一部の CPU サイクルを他のプロセスに引き渡すというステートメントがあったことを覚えています。

私の質問は、私のマシン上の他のプロセスとうまく動作するスクリプトを書くことを可能にする同様の構造が Python にあるのでしょうか?

以下の典型的なスクリプト....

# import required libs

if __name__ == '__main__':
    init()
    do_some_expensive_calcs()  # need to periodically 'yield' to other processes here - how do I do it?
4

2 に答える 2

1

OSパッケージを使用してスクリプト自体からこれを行うこともできると思います:

import os
os.nice(100)
于 2012-07-27T08:07:39.047 に答える
0

*ix マシンを使用している場合は、プログラムを適切に開始します。

nice ./prog

また、実行中にプログラムを「再利用」することもできますtop

私が常に考える価値のあるもう 1 つの戦略は、アルゴリズムを改善することです。

于 2012-07-27T08:05:49.890 に答える