モジュール「Parallel Python」(pp) を使用して、「大きな」ツール (聞いたことがある場合は gdal2tiles) の計算を分散しようとしています。pp に慣れるためにいくつかの簡単なテストを実行していましたが、説明できない問題に遭遇しました。
コードは次のとおりです。
import pp
def fun():
import subprocess
p = subprocess.Popen("dir", shell=True)
p.wait()
ppservers=("*",)
job_server=pp.Server(ncpus=0,ppservers=ppservers)
if __name__=='__main__':
FORMAT = u'%(asctime)-15s %(message)s'
import logging
logging.basicConfig( level=logging.DEBUG, format=FORMAT )
f = job_server.submit(fun)
r=f()
job_server.print_stats()
subprocess.Popen の「dir」は、有効なシェル コマンドを渡すためのものです。
私の ppserver では、「ppserver.py -a -d」を実行します。クライアントのコンソールでは、タスクが終了しないように見えますが、サーバーでは終了します。
テストをさらに進める前に、ここで何が起こっているのかを理解したいと思います。最終的なプログラムはもっと複雑だからです。
ありがとう!