python 多进程复杂示例
时间: 2024-08-15 09:01:42 浏览: 50
python实现多进程代码示例
在Python中,多进程是一个强大的工具,可以实现并发执行任务,提高程序性能。下面是一个复杂的多进程示例,它展示了如何使用`multiprocessing`模块创建一个池(Pool)来并行处理一组计算密集型任务:
```python
import multiprocessing as mp
# 定义一个计算斐波那契数列的函数,我们将这个函数分发给工作进程
def fibonacci(n):
if n <= 0:
return "Invalid input"
elif n == 1 or n == 2:
return 1
else:
return fibonacci(n - 1) + fibonacci(n - 2)
# 创建一个包含4个工作进程的进程池
pool = mp.Pool(processes=4)
# 提交一组计算任务到进程池
tasks = [i for i in range(50)]
results = pool.map(fibonacci, tasks)
# 等待所有任务完成,并打印结果
print("Fibonacci results:", {i: results[i] for i in range(len(tasks))})
# 关闭进程池,释放资源
pool.close()
pool.join()
阅读全文