Python守護執行緒簡述

2022-07-16 09:39:12 字數 463 閱讀 3888

thread模組不支援守護執行緒的概念,當主線程退出時,所有的子執行緒都將終止,不管它們是否仍在工作,如果你不希望發生這種行為,就要引入守護執行緒的概念。

threading模組支援守護執行緒,其工作方式是:守護執行緒一般是乙個等待客戶端請求服務的伺服器。如果沒有客戶端請求,守護執行緒就是空閒的,如果把乙個執行緒設定為守護執行緒,就表示這個執行緒是不重要的,程序退出時就不需要等待這個執行緒執行完成。

如果主線程準備退出時,不需要等待某些子執行緒執行完成,就可以為這些子執行緒設定守護執行緒標記。該標記為真時,表示該執行緒是不重要的,或者說該執行緒只是用來等待客戶端請求而不做任何其它事情。

要將乙個執行緒設定為守護執行緒,需要在啟動執行緒之前執行如下賦值語句:thread.daemon=true。同樣,要檢查執行緒的守護狀態,也只需要檢查這個值即可。乙個新的子執行緒會繼承父執行緒的守護標記。整個python程式(可以解讀為:主線程)將在所有非守護執行緒退出之後才退出,換句話說,就是沒有存活的非守護執行緒時。

Python 守護執行緒

python 守護執行緒 如果你想等待子執行緒完成再退出,那就什麼都不用做。或者顯示地呼叫thread.setdaemon false 設定daemon的值為false。新的子執行緒會繼承父執行緒的daemon標誌。整個python會在所有的非守護執行緒退出後才會結束,即程序中沒有非守護執行緒存在的...

python 守護執行緒

一 基礎概念 1 守護執行緒 在主線程 執行結束後,等待其它子執行緒執行結束,守護執行緒結束 2 守護程序 隨著主程序 執行結束,守護程序結束 3 主線程執行結束,它所在的程序執行結束 4 主程序 執行結束,主程序並沒結束,等待其它子程序執行結束並 資源 二 示例 守護執行緒 import time...

python執行緒鎖 守護執行緒,程序鎖 守護程序

1 守護程序 1.1 什麼是守護程序?1 守護程序會在主程序 執行結束的情況下,立即結束。2 守護程序本身其實就是乙個子程序。3 主程序在其 結束後已經執行完畢 守護程序在此時就被 然後主程序會一直等非守護的子程序都執行完畢後 子程序的資源才會結束。1.2 為什麼要用守護程序?1 守護程序本身就是乙...