在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
)。你可以根據具體需求選擇合適的方法來管理多進程。