3

我有一个需要执行的进程池。我想充分利用机器,让所有的 CPU 都在执行进程。我不想过度订阅系统,所以我真正想要的是在任何给定时刻#executing_processes=#cpus。我还需要存储每个已完成进程的标准输出、标准错误和返回码。如何在 Python 中实现这一点?

编辑:“进程”是指外壳进程。

4

1 回答 1

2

如果您谈论的是您自己的 Python 实现的流程:

multiprocessing模块使您能够生成多个进程。特别是,听起来您可能想要创建multiprocessing.cpu_count个进程,可能在Pool.

如果您正在谈论要通过 shell 执行的单独程序:

subprocess模块将允许您通过其Popen类生成进程,该类具有接受类文件对象的,参数 stdin。可用于检查返回码。stdoutsterrPopen.returncode

于 2010-02-08T07:18:57.640 回答