在Python中,有兩種常用的方法來創(chuàng)建多個進(jìn)程:
multiprocessing
模塊:multiprocessing
模塊提供了一種方便的方式來創(chuàng)建和管理多個進(jìn)程。它通過創(chuàng)建Process
對象來實(shí)現(xiàn)多進(jìn)程,并提供了一些方法來啟動、停止和等待進(jìn)程。下面是一個使用multiprocessing
模塊創(chuàng)建多進(jìn)程的示例:from multiprocessing import Process
def func():
# 進(jìn)程需要執(zhí)行的代碼
print("Hello, world!")
if __name__ == '__main__':
# 創(chuàng)建進(jìn)程對象
p = Process(target=func)
# 啟動進(jìn)程
p.start()
# 等待進(jìn)程結(jié)束
p.join()
concurrent.futures
模塊:concurrent.futures
模塊提供了高級的接口,用于異步執(zhí)行可調(diào)用對象(函數(shù)或方法)。它可以使用進(jìn)程池或線程池來執(zhí)行多個任務(wù)。下面是一個使用concurrent.futures
模塊創(chuàng)建多進(jìn)程的示例:from concurrent.futures import ProcessPoolExecutor
def func():
# 進(jìn)程需要執(zhí)行的代碼
print("Hello, world!")
if __name__ == '__main__':
# 創(chuàng)建進(jìn)程池對象
with ProcessPoolExecutor() as executor:
# 提交任務(wù)給進(jìn)程池
future = executor.submit(func)
# 等待任務(wù)完成
result = future.result()
使用以上兩種方法可以在Python中創(chuàng)建多個進(jìn)程,并利用多核處理器來并發(fā)執(zhí)行任務(wù),提高程序的執(zhí)行效率。