日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

118 Python程序中的線程操作-守護線程

系統 1806 0

[TOC]

一、守護線程

無論是進程還是線程,都遵循:守護xx會等待主xx運行完畢后被銷毀。需要強調的是:運行完畢并非終止運行。

  1. 對主進程來說,運行完畢指的是主進程代碼運行完畢
  2. 對主線程來說,運行完畢指的是主線程所在的進程內所有非守護線程統統運行完畢,主線程才算運行完畢

1.1 詳細解釋

  1. 主進程在其代碼結束后就已經算運行完畢了(守護進程在此時就被回收),然后主進程會一直等非守護的子進程都運行完畢后回收子進程的資源(否則會產生僵尸進程),才會結束。
  2. 主線程在其他非守護線程運行完畢后才算運行完畢(守護線程在此時就被回收)。因為主線程的結束意味著進程的結束,進程整體的資源都將被回收,而進程必須保證非守護線程都運行完畢后才能結束。

1.2 守護進程演示

          
            from threading import Thread,enumerate,currentThread
import time
'''
守護線程:
 守護的是進程的運行周期,只要當前進程中一個線程在運行就會守護
'''
def task():
    print('守護線程開始')
    print(currentThread())
    time.sleep(20)

def task2():
    print('子線程 start')
    time.sleep(5)
    print(enumerate())  # 主線程結束了,但是 守護進程并沒有死掉
    print('子線程 end')

if __name__ == '__main__':
    t1 = Thread(target=task)
    t2 = Thread(target=task2)
    t1.setName("守護線程")
    t2.setName("子線程")
    t1.daemon = True    # 守護線程
    t2.start()
    t1.start()
    print('主')

          
        

更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 东兴市| 荆门市| 基隆市| 河北区| 和政县| 五大连池市| 西丰县| 当涂县| 枣强县| 南和县| 镇江市| 法库县| 扎鲁特旗| 凤阳县| 乌鲁木齐县| 通渭县| 司法| 华安县| 西乡县| 花莲市| 桃源县| 三亚市| 盈江县| 青阳县| 甘泉县| 高密市| 秦皇岛市| 望谟县| 文水县| 南阳市| 十堰市| 财经| 肇东市| 托克托县| 大安市| 根河市| 阜城县| 黔西县| 南投市| 易门县| 信丰县|