[python][threading][守護線程]

    thread不支持守護線程,當主線程退出時,所有的子線程無條件推出;針對這種情況,threading引入了守護線程的概念。

    如果主線程要退出的時候,不用等待子線程完成,那就在線程開始之前,即調用start()之前,調用setDaemon(True),表示這個線程不重要;相反的,如果要等待子線程完成再退出,那就什麼都不做或者顯示調用setDaemon(False)。新的子線程會繼承父線程的daemon。

    join()會等到線程結束,或者再給了timeout參數的時候,等到超時爲止。一旦線程啓動後,就會一直運行,直到線程函數退出。如果主線程除了等線程結束外還有其他的事情做,就不需要調用join(),只有在你要等待線程結束的時候纔要調用join()。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章