を完了しない私は、マルチプロセッシングでのpython 2.7を使用しています::プールを並列Pythonの:マルチプロセッシングは、ジョブズ
でジョブを実行するために、私は以下の例を簡略化してきたが、ここでの主な要点です。
apply_async()
機能を使用して、自分の個人用のファイルを作成します。しかし、ファイルが正しく作成されたかどうかを確認すると、ファイルが作成されていないことがあります。
今、私は私がマルチプロセッシングを使用する方法で何かを間違ってやった::プール
何かアドバイスを考えていますか?
import os
from multiprocessing import Pool
def outputFile(person):
ofh=open(person+'.txt','w')
ofh.write('test\n')
ofh.close()
pool = Pool(processes=4)
for person in person_dict:
pool.apply_async(outputFile,args(person))
pool.close()
pool.join()
for person in person_dict:
print os.path.isfile(person+'.txt')
True
True
False
True
わかりません。通常、私はエラーが発生しない時間の99%を言うでしょう。しかし時にはプロセスが落ちて出力ファイルが形成されないことがあります。 – DolphinGenomePyramids
呼び出しプロセスに表示されない子プロセスでIO例外またはランタイムエラーが発生することがあります。 – neurite