【发布时间】:2015-02-15 10:15:28
【问题描述】:
我目前正在使用 GNU Parallel 同时在多个大文件上运行 Python 脚本。我有一个主 Python 脚本来设置我需要处理的文件,然后调度 Parallel 以在这些文件上运行相同的工作脚本。
当所有工作人员完成后,我需要将数据返回到主线程,而我目前只是写入文件并将它们拉回。工人是否可以将腌制的内容转储到 STDOUT 以供 master 收集,或者是否有可能两个工人可以同时开始写入 STDOUT 并相互交错?
基本上,STDOUT 会阻塞直到另一个程序完成?
【问题讨论】:
-
你说的是多线程还是多进程?
-
抱歉 - 这是多个进程。我使用“getoutput”运行带有参数列表的“parallel script.py”。
-
好的。请注意,每个进程都有自己的标准输出。处理交错等问题是任何消耗标准输出的工作。
-
为什么不完全使用 Python 已有的并行处理 API。 wiki.python.org/moin/ParallelProcessing 和 pypi.python.org/pypi/processing 值得一看吗?
标签: python multithreading parallel-processing multiprocessing stdout