在Python中,使用`multiprocessing`模块可以创建多个进程来执行不同的任务。以下是一个简单的示例,展示了如何创建多个进程并传递参数给这些进程:
import multiprocessing
import time
定义任务函数
def task(n=100_000_000):
while n:
n -= 1
创建多个进程
processes = []
for i in range(5):
p = multiprocessing.Process(target=task, args=(i,))
processes.append(p)
启动所有进程
for p in processes:
p.start()
等待所有进程结束
for p in processes:
p.join()
print('所有进程已完成。')
在这个示例中,我们定义了一个名为`task`的任务函数,它接受一个参数`n`,并在循环中递减`n`的值。然后,我们创建了5个进程,每个进程都执行`task`函数,并传递了一个不同的参数(从0到4)。通过调用`start()`方法启动每个进程,并通过`join()`方法等待所有进程完成。
请注意,在Windows操作系统上,`multiprocessing`模块会创建子进程,并在父进程的内存空间中复制一份数据给子进程。而在Unix系统上,子进程会继承父进程的内存空间。