multiprocessing模块是Python标准库中用于实现多进程的模块,它提供了一些工具和类来创建和管理多个进程。
以下是multiprocessing模块的一些常用方法:
Process()创建一个新的进程对象,需要传入一个函数作为该进程要执行的任务。
start()启动进程,会调用传入的函数并在新进程中执行。
join()等待进程执行完毕,阻塞当前进程直到目标进程执行完毕。
Queue()创建一个队列对象,用于在进程之间传递数据。
Pipe()创建一个管道对象,用于在进程之间传递数据。
Pool()创建一个进程池对象,可以指定进程数量和任务函数,自动管理进程的创建、执行和回收。
Lock()创建一个锁对象,用于同步进程之间的访问共享资源。
Value() 和 Array()创建共享变量或数组对象,可以在进程之间共享数据。
下面是一个简单的示例代码,演示了如何使用multiprocessing模块创建多个进程并传递参数:
在这个示例中,我们首先导入了multiprocessing模块。然后定义了一个名为worker的函数,这个函数将作为进程执行的任务。接着在主程序中创建了一个进程对象p,并将worker函数和参数1传入。最后通过调用start()方法启动进程,并通过调用join()方法等待进程执行完毕。
import multiprocessingdef worker(num):"""线程执行的任务函数"""print(f'工作进程:{num}')if __name__ == '__main__':# 创建进程对象p = multiprocessing.Process(target=worker, args=(1,))# 启动进程p.start()# 等待进程执行完毕p.join()