不少人學習python,不知道從何學起。
不少人學習python,掌握了基本語法事後,不知道在哪裏尋找案例上手。
不少已經作案例的人,殊不知道如何去學習更加高深的知識。
那麼針對這三類人,我給你們提供一個好的學習平臺,免費領取視頻教程,電子書籍,以及課程的源代碼!
QQ羣:101677771python
進程就是正在運行的程序,它是操做系統中,資源分配的最小單位
資源分配:分配的是cpu和內存等物理資源,進程號是進程的惟一標識
獲取當前進程–子進程
異步和同步:服務器
獲取當前進程的父進程併發
爲解決Windows系統和Linux系統的兼容問題,下面這句話必須加上:
__name__ == 「__main__」app
運行結果:
dom
引用multiprocessing模塊來建立以一個進程:異步
運行結果:
學習
在進程對象的建立處使用args進行傳參spa
運行結果:
操作系統
運行結果:
.net
如圖,子進程對count的操做沒有影響到主進程
多個進程之間是異步併發的程序,由於cpu的調度策略問題,不必定哪一個程序先執行,哪一個程序後執行
總體而言,主進程比子進程建立的速度要快,cpu遇到阻塞會當即切換任務,等到阻塞態的任務變成了就緒態,cpu再回來執行
主程序會默認等到全部子程序執行結束以後,再統一關閉程序,釋放資源
若不等待,有可能在後臺存有多個未執行結束的子進程,會變成殭屍進程,不停的佔用cpu和內存。
運行結果:
如圖,由於多個進程之間是異步併發的,因此會產生以上結果
等待當前子進程所有執行完畢後,主進程再進行執行
運行結果:
自定義進程類的要求:
基本寫法:
帶有參數自定義類的方法:
運行結果:
守護進程守護的是主進程,若是主進程中的全部代碼執行完畢了,當前這個守護進程會被馬上殺死,當即終止。
語法:
進程.daemon = True 設置當前這個進程爲守護進程
必須在start()調用進程以前進行設置
默認:主進程會等待全部子進程執行結束後,再關閉程序,釋放資源
運行結果:
案例:
監控報活: 利用守護進程特性,監控日誌分析服務器是否存活
運行結果: