2016-07-26 47 views
0

如果一個程序的執行過程中相同的值get_ident()回報,這是否意味着線程是同一個線程,或者是否有可能該線程被重新啓動,但得到了同樣的標識符作爲前一個線程?get_ident()返回相同的值是什麼意思?

如果可能的話,怎麼可能是它 - 很可能?

我問,因爲我期望的特定線程子被殺害,並在節目播放過程重新啓動多次,並且只有一個子類的實例中運行的同時一個線程。但是,我讓這些線程偶爾記錄了由get_ident()返回的線程ID,並且我發現即使在第一次出現後記錄了不同的ID後,某些ID重新出現也是很常見的。

回答

1

是否有可能線程已重新啓動,但獲得與前一個線程相同的標識符?

是的,它似乎很。從the documentation

當一個線程退出並創建另一個線程時,線程標識符可能會被回收。

至於它有多普遍,它可能取決於操作系統和Python的實現,但我期望它是一個相當頻繁的事件。

相關問題