首页 > 解决方案 > Python中如何调整Pool的进程数

问题描述

有没有办法multiprocessing.Pool在创建后调整它的进程数?如果不是,那么实现此类功能的正确方法是什么?

标签: pythonmultiprocessingpython-multiprocessing

解决方案


源代码中,有一个名为的私有方法_repopulate_pool()似乎能够更改池中的工人数量。但我不建议您尝试即时调整池中的处理器数量。你最好在一开始就初始化处理器的数量。

要调整要使用的进程数,multiprocessing.Pool您可以使用该processes标志。从文档

processes是要使用的工作进程数。如果processesNone则使用返回的数字cpu_count()

例如将进程数设置为 4,这意味着Pool该类将只允许 4 个进程同时运行。

import multiprocessing as mp

pool = mp.Pool(processes=4)

推荐阅读