【发布时间】:2011-02-14 12:59:11
【问题描述】:
我编写了一个简单的脚本,对一系列文件执行系统命令。 为了加快速度,我想并行运行它们,但不是一次全部运行——我需要控制同时运行的命令的最大数量。 解决这个问题的最简单方法是什么?
【问题讨论】:
-
@unholysampler:这个问题既与多线程无关,也与线程池无关。线程可能是给定问题的一种解决方案,但在我看来是一个糟糕的解决方案。我将再次删除这些标签。
-
@S.Lott。限制最大进程数似乎是合理的。想象一下,您有 100k 进程要启动,您会希望同时运行它们并生成所有进程?即使操作系统可以应付它......
-
@S.Lott 如果正在启动的进程是数据库密集型进程,您可以通过并行运行少量进程来加快速度,但在某个点争用之后会导致速度变慢。
-
@S.Lott 例如,如果系统命令是 sftp,那么您可能希望并行运行有限数量的进程。鉴于问题引用了系统命令,我对数据库的引用可能没有帮助,但这就是我过去遇到这种情况的原因。
标签: python