Python Multiprocessing 处理函数循环
时间: 2023-07-17 16:57:58 浏览: 52
在Python中,使用`multiprocessing`库可以实现多进程并行处理。要在多个进程中循环执行某个函数,可以使用`Pool`类来创建进程池,并使用`map`方法来分配任务。
下面是一个示例代码,演示了如何在多个进程中循环执行某个函数:
```python
import multiprocessing
# 定义要执行的函数
def process_function(i):
# 在这里编写你的处理逻辑
print("Processing:", i)
if __name__ == '__main__':
# 创建进程池,设置进程数为4
pool = multiprocessing.Pool(processes=4)
# 循环调用函数,传入参数列表
# 这里以执行10次为例,可以根据实际需求修改循环次数
inputs = range(10)
pool.map(process_function, inputs)
# 关闭进程池
pool.close()
pool.join()
```
在上面的代码中,首先定义了一个`process_function`函数,用于处理每个任务。然后,在主程序中创建了一个进程池,并设定进程数为4。接着,通过`range(10)`生成了一个包含10个元素的列表,作为要处理的任务参数。最后,使用`map`方法将任务分配给进程池中的进程进行并行处理。
请注意,在使用`multiprocessing`模块时,必须将主程序代码放在`if __name__ == '__main__':`条件下,以避免在Windows系统中出现死循环的问题。
希望以上示例能帮助到你!如果还有其他问题,请继续提问。