1. 程式人生 > >一行 Python 代碼實現三分彩網站搭建並行

一行 Python 代碼實現三分彩網站搭建並行

操作 學習 例子 網頁 pytho 一個 學習者 想要 隊列

Python 在程序並行化方面多少有些聲名狼藉。三分彩網站搭建【企鵝21717-93408】撇開技術上的問題,例如線程的實現和 GIL,我覺得錯誤的教學指導才是主要問題。常見的經典 Python 多線程、多進程教程多顯得偏"重"。而且往往隔靴搔癢,沒有深入探討日常工作中最有用的內容。
我並不是說使用生產者/消費者模型處理多線程/多進程任務是錯誤的(事實上,這一模型自有其用武之地)。只是,處理日常腳本任務時我們可以使用更有效率的模型。

Python學習群:556370268,這裏是python學習者聚集地,歡迎喜歡Python的小夥伴!

問題在於…

首先,你需要一個樣板類;

其次,你需要一個隊列來傳遞對象;

而且,你還需要在通道兩端都構建相應的方法來協助其工作(如果需想要進行雙向通信或是保存結果還需要再引入一個隊列)。

worker 越多,問題越多

按照這一思路,你現在需要一個 worker 線程的線程池。下面是一篇 IBM 經典教程中的例子——在進行網頁檢索時通過多線程進行加速。
這段代碼能正確的運行,但仔細看看我們需要做些什麽:構造不同的方法、追蹤一系列的線程,還有為了解決惱人的死鎖問題,我們需要進行一系列的 join 操作。這還只是開始……

至此我們回顧了經典的多線程教程,多少有些空洞不是嗎?樣板化而且易出錯,這樣事倍功半的風格顯然不那麽適合日常使用,好在我們還有更好的方法。

一行 Python 代碼實現三分彩網站搭建並行