我希望这不是主题。
我正在编写一个工作量很大的python脚本,所以我决定使用Python multiprocessing
ThreadPool API。
我以这种方式使用它:
pool = multiprocessing.pool.ThreadPool(processes=max_threads)
pool.map(routine, args)
如何估计要使用的最大线程数以及我可以提交给池的最大任务数?
执行例程必须对subprocess
,os.path.isfile()
和os.stat()
等外部脚本和文件系统操作进行os.remove()
调用。
每个线程在一小部分数据上执行例程,并且不与其他线程共享任何内容,因此不使用锁。
我在四核处理器上测试它,但我必须将它部署在几个核心的迷你集群中。
如果有什么我可以添加,请在下面发表评论..
由于