Python中的并行處理可以利用多核處理器的計算能力,從而提高程序的執行效率。通過使用multiprocessing
模塊,我們可以創建多個進程,每個進程運行在不同的核心上,從而實現并行處理。
以下是一個簡單的示例代碼,展示了如何使用multiprocessing
模塊來利用多核處理器:
import multiprocessing
def worker(num):
"""工作函數,模擬一些計算任務"""
print(f'Worker {num} is working...')
# 在這里執行實際的任務
if __name__ == '__main__':
# 獲取系統中可用的核心數量
num_cores = multiprocessing.cpu_count()
print(f'Number of cores: {num_cores}')
# 創建一個進程池,大小等于核心數量
pool = multiprocessing.Pool(processes=num_cores)
# 啟動多個進程,每個進程執行worker函數
pool.map(worker, range(num_cores))
# 關閉進程池,等待所有進程完成
pool.close()
pool.join()
在這個示例中,我們首先導入了multiprocessing
模塊,然后定義了一個名為worker
的工作函數,該函數模擬了一些計算任務。在主程序中,我們獲取了系統中可用的核心數量,并創建了一個進程池,其大小等于核心數量。接著,我們使用pool.map()
方法將worker
函數應用到一系列數字上,這些數字的范圍是從0到核心數量減1。最后,我們關閉進程池并等待所有進程完成。
通過這種方式,我們可以充分利用多核處理器的計算能力,提高程序的執行效率。