在Python中,可以使用multiprocessing
模块来创建和管理多进程。这个模块提供了Process
类,可以用来创建新的进程。以下是一个简单的示例:
import multiprocessing
def worker(num):
"""模拟一个需要并行处理的任务"""
print(f"Worker: {num}")
if __name__ == "__main__":
# 创建进程列表
processes = []
# 为每个数字创建一个新的进程
for i in range(5):
p = multiprocessing.Process(target=worker, args=(i,))
processes.append(p)
p.start()
# 等待所有进程完成
for process in processes:
process.join()
在这个示例中,我们首先导入了multiprocessing
模块。然后,我们定义了一个名为worker
的函数,该函数接受一个参数num
并打印出来。在主程序中,我们创建了一个空的进程列表,并为每个数字(0到4)创建了一个新的进程。我们将worker
函数作为目标传递给Process
类,并将数字作为参数传递给它。然后,我们将新创建的进程添加到进程列表中,并使用start()
方法启动它们。最后,我们使用join()
方法等待所有进程完成。
除了Process
类之外,multiprocessing
模块还提供了其他有用的功能,如进程间的通信(Queue
、Pipe
、Value
和Array
)和进程池(Pool
)。你可以根据具体需求选择合适的方法来管理多进程。