39,359
社区成员




在Python中,可以使用`multiprocessing`模块来创建多进程。`multiprocessing`模块是Python标准库中的一个模块,它提供了一个类似于`threading`模块的接口,但是可以创建进程而不是线程。
下面是创建多进程的步骤:
1. 导入`multiprocessing`模块
```python
import multiprocessing
```
2. 创建进程对象
```python
p = multiprocessing.Process(target=func, args=(arg1,arg2,...))
```
其中`func`是要在子进程中执行的函数,`args`是传递给函数的参数。
3. 启动进程
```python
p.start()
```
4. 等待进程结束
```python
p.join()
```
完整的代码示例:
```python
import multiprocessing
def func(name):
print('hello', name)
if __name__ == '__main__':
p = multiprocessing.Process(target=func, args=('world',))
p.start()
p.join()
```
在这个例子中,我们创建了一个名为`func`的函数,它接受一个参数`name`,并打印出`hello`和该参数。然后我们使用`multiprocessing.Process`类创建了一个进程对象,并指定要在子进程中执行的函数和参数。最后,我们启动了进程,并等待它结束。
需要注意的是,在Windows系统中,由于`multiprocessing`模块使用了`fork`系统调用,而Windows不支持`fork`,因此在Windows中使用`multiprocessing`模块时,需要将代码放在`if __name__ == '__main__':`语句块中。这是因为在Windows中,每个进程都会重新导入模块,如果不加这个语句块,就会导致无限递归。