我有一个需要执行的进程池。我想充分利用机器,让所有的CPU都在执行进程。我不想过度订阅系统,所以我真正想要的是在任何给定时刻#executing_processes=#cpus。 我还需要存储每个已完成进程的标准输出、标准错误和返回码。 如何在 Python 中实现这一点?
编辑:“进程”是指 shell 进程。
最佳答案
如果您谈论的是您自己的、Python 实现的进程:
multiprocessing
模块使您能够产生多个进程。特别是,听起来您想创建 multiprocessing.cpu_count进程数,可能位于 Pool
中。
如果您正在讨论要通过 shell 执行的单独程序:
subprocess
模块会让你通过它的 Popen
生成进程类,它具有接受类文件对象的 stdin
、stdout
、sterr
参数。 Popen.returncode
可用于检查返回码。
关于python - Python 中进程群调度的简单示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2220083/