python multiprocessing。Process
时间: 2023-12-05 09:30:49 浏览: 85
Python多进程示例multiprocess.py
Python中的`multiprocessing`模块是用于实现并行计算的工具,它提供了创建和管理进程的功能。`multiprocessing`模块中的`Process`类是用于创建进程的主要类。
使用`Process`类,你可以在程序中创建一个新的进程,并在该进程中执行特定的任务。下面是一个简单的示例代码:
```python
import multiprocessing
def worker(num):
"""子进程要执行的任务"""
print(f'Worker {num} started')
# 执行一些任务...
print(f'Worker {num} finished')
if __name__ == '__main__':
# 创建三个子进程并启动
processes = []
for i in range(3):
p = multiprocessing.Process(target=worker, args=(i,))
processes.append(p)
p.start()
# 等待所有子进程完成
for p in processes:
p.join()
print('All processes finished')
```
在上面的代码中,我们定义了一个`worker`函数作为子进程要执行的任务。然后,在主进程中,我们创建了三个`Process`对象,并将`worker`函数作为目标函数传递给它们。通过`args`参数,我们可以向`worker`函数传递参数。
最后,我们启动了所有的子进程,并使用`join`方法等待它们完成。这样可以确保在主进程继续执行之前,所有的子进程都已经执行完毕。
请注意,为了避免在Windows下出现意外的行为,我们将创建进程的代码包装在`if __name__ == '__main__':`条件中。这是由于Windows操作系统的进程启动方式与Unix-like系统有所不同。
希望这能帮到你!如果有任何问题,请随时问我。
阅读全文