在Python中,可以使用multiprocessing
庫來實現多進程。以下是一個簡單的示例,展示了如何使用multiprocessing
庫啟動一個多進程程序:
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
并打印出來。這個函數將作為我們的任務并行執行。
在__main__
部分,我們創建了一個空的進程列表processes
。然后,我們使用for
循環為0到4的每個數字創建一個新的進程。對于每個數字,我們使用multiprocessing.Process
類創建一個新的進程,并將worker
函數作為目標傳遞給它。我們還使用args
參數將數字傳遞給worker
函數。接下來,我們將新創建的進程添加到processes
列表中,并使用start()
方法啟動它。
最后,我們使用另一個for
循環遍歷processes
列表中的所有進程,并使用join()
方法等待它們完成。這將確保在程序退出之前,所有進程都已經完成了它們的任務。