1. 程式人生 > >python3多線程應用詳解(第一卷:線程的本質概念)

python3多線程應用詳解(第一卷:線程的本質概念)

本質 函數 解釋 style height auto 進行 mage pla

之前我用過多線程的方式執行了爬蟲程序,爬取了糗事百科的數據可以看到速率非常之快,就像正常一個人他要完一個漢堡,再吃喝一瓶水才能走,結果他邊吃漢堡邊喝水,速率一下加快了一樣。首先我們看看什麽是線程:

技術分享圖片

圖中我將一個PY文件的內容,進行了細化,這個PY文件如果要執行,那麽他這個行為就叫做一個進程,那麽線程呢我們來看下PY文件的內容圖

技術分享圖片

可以看到這個PY文件內的函數任務執行順序是從1-3的從上向下的執行一直到結束,而這條工作線就叫做線程,所以說一個進程就會擁有一個線程,

你可以這樣理解一個進程代表你要建個樓,從開始準備到大樓徹底建造完畢,就是一個線程。有的人會問線程與進程區別,其實現在一想這個問題就是個錯誤問題,再有人問你你就好好給他講講

可以看的出進程對於線程來說就是個管理者

那麽一個進程是如何運用他的線程來工作的呢,請看下圖:

技術分享圖片

看到了吧,這一張大盤子,進程通過解釋器再到操作系統調動CPU來執行,這就是一個進程即程序執行的過程。

python3多線程應用詳解(第一卷:線程的本質概念)