python中的守護執行緒

2022-05-19 08:00:11 字數 994 閱讀 8441

什麼是守護執行緒:在後台執行,為其他執行緒提供服務的執行緒成為守護執行緒。

為什麼要引入守護執行緒:

thread模組不支援守護執行緒的概念,當主線程退出時,所有的子執行緒都將終止,不管它們是否仍在工作,

如果你不希望發生這種行為,就要引入守護執行緒的概念。

守護執行緒的呼叫格式:thread.setdaemon(true)

如何使用守護執行緒:

1.當只有乙個子執行緒並且為守護執行緒,那麼這個守護執行緒就會等待主線程執行完畢後掛掉

2.當有多個子執行緒時,守護執行緒就會等待所有的子執行緒執行完畢後,守護執行緒才會掛掉

什麼時候設定守護執行緒:

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

使用守護執行緒的前提:

1.要將乙個執行緒設定為守護執行緒,需要在啟動執行緒之前執行如下賦值語句:thread.daemon=true。

2.要檢查執行緒的守護狀態,也只需要檢查這個值即可。乙個新的子執行緒會繼承父執行緒的守護標記。

3.主線程將在所有非守護執行緒退出之後才退出,換句話說,就是沒有存活的非守護執行緒時。

守護執行緒在threading模組中的工作方式:

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

注意:

1、守護執行緒會在該程序內所有非守護執行緒全部都執行完畢後,守護執行緒才會掛掉。

2、守護執行緒守護的是:當前程序內所有的子執行緒!

3、主線程在其他非守護執行緒執行完畢後才算執行完畢,守護執行緒在此時被**。

python中的守護執行緒

守護執行緒的作用是什麼?用兩段 來說明 段1 coding utf 8 import threading import time def send message mes print before send message time.sleep 2 print after send message ...

python中的守護執行緒

什麼是守護執行緒 在後台執行,為其他執行緒提供服務的執行緒成為守護執行緒。為什麼要引入守護執行緒 thread模組不支援守護執行緒的概念,當主線程退出時,所有的子執行緒都將終止,不管它們是否仍在工作,如果你不希望發生這種行為,就要引入守護執行緒的概念。守護執行緒的呼叫格式 thread.setdae...

Python程式中的執行緒操作 守護執行緒

無論是程序還是執行緒,都遵循 守護xx會等待主xx執行完畢後銷毀。需要強調的是 執行完畢並非終止執行。對主程序來說,執行完畢指的是主程序 執行完畢 對主線程來說,執行完畢指的是主線程所在的程序內所有非守護執行緒統統執行完畢,主線程才算執行完畢。1.1詳細解釋 主程序在其 結束後就已經算執行完畢了 守...