在并行編程中,Python 具有簡化實現的內置和外部模塊。 本書是基于Python3.X的。
Python的threading模塊
Python的threading模塊為模塊?_thread?提供了一個抽象層,它是一個較低級別的模塊。 它提供的功能可以幫助程序員完成基于線程開發并行系統的艱巨任務。?threading模塊的官方文檔可以在threading — Thread-based parallelism — Python 3.13.3 documentation中找到。
Python的mutliprocess模塊
multiprocessing?模塊旨在為使用基于進程的并行性提供一個簡單的 API。 該模塊類似于線程模塊,它簡化了進程之間的交替,沒有太大的困難。基于進程的方法在 Python 用戶社區中非常流行,因為它是回答有關使用 CPU 綁定線程和 Python 中存在的 GIL 的問題的替代方法。?multiprocessing模塊的官方文檔可以在以下位置找到:multiprocessing — Process-based parallelism — Python 3.13.3 documentation
Python的parallel模塊
parallel Python?是外部模塊,它提供了豐富的 API,這些API利用進程的方法創建并行和分布式系統。該模塊是輕量級并且易安裝的,并可與其他 Python 程序集成。 可以在?http://parallelpython.com?找到?parallel Python?模塊。 在所有功能中,我們可能會強調以下內容:
- 自動檢測最佳配置
- 在運行時可以更改許多工作進程的狀態
- 動態的負載均衡
- 容錯性
- 自動發現計算資源
Celery分布式任務隊列
Celery?是一個出色的 Python 模塊,用于創建分布式系統并具有出色的文檔。 它在并發形式上使用了至少三種不同類型的方法來執行任務——multiprocessing、Eventlet 和 Gevent。 然而,這項工作將集中精力于多處理方法的使用。 而且,只需要通過配置就能實現進程間的互相通信,它將作為一項課題研究,以便讀者能夠與他/她自己的實驗進行比較。
Celery模塊可以在官方的項目頁面http://celeryproject.org得到。