在Python中,可以使用multiprocessing
模塊來(lái)創(chuàng)建和管理多進(jìn)程。這個(gè)模塊提供了Process
類,可以用來(lái)創(chuàng)建新的進(jìn)程。以下是一個(gè)簡(jiǎn)單的示例:
import multiprocessing
def worker(num):
"""模擬一個(gè)需要并行處理的任務(wù)"""
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()
在這個(gè)示例中,我們首先導(dǎo)入了multiprocessing
模塊。然后,我們定義了一個(gè)名為worker
的函數(shù),該函數(shù)接受一個(gè)參數(shù)num
并打印出來(lái)。在主程序中,我們創(chuàng)建了一個(gè)空的進(jìn)程列表,并為每個(gè)數(shù)字(0到4)創(chuàng)建了一個(gè)新的進(jìn)程。我們將worker
函數(shù)作為目標(biāo)傳遞給Process
類,并將數(shù)字作為參數(shù)傳遞給它。然后,我們將新創(chuàng)建的進(jìn)程添加到進(jìn)程列表中,并使用start()
方法啟動(dòng)它們。最后,我們使用join()
方法等待所有進(jìn)程完成。
除了Process
類之外,multiprocessing
模塊還提供了其他有用的功能,如進(jìn)程間的通信(Queue
、Pipe
、Value
和Array
)和進(jìn)程池(Pool
)。你可以根據(jù)具體需求選擇合適的方法來(lái)管理多進(jìn)程。