[英]Thread identifier in multiprocessing pool workers
我相信Thread.ident
是Thread.ident
的唯一標識符,但是現在我在multiprocessing.poo.Pool
看到了不同的工作進程,它們通過threading.current_thread().ident
報告相同的線程標識符。 怎么樣?
根據平台的不同,ID可能是唯一的,也可能不是唯一的。 這里要注意的重要一點是python多重處理庫實際上使用進程而不是線程進行多重處理,因此進程之間的線程id實際上是特定於平台的實現細節。
在Unix / Linux上:保證線程ID在單個進程內唯一。 但是,不能保證線程ID在進程之間是唯一的。 但是,processid(pid)在各個進程之間將是唯一的。 因此,可以通過將兩者放在一起獲得唯一的標識符。 man pthread
頁面上的詳細信息http://man7.org/linux/man-pages/man7/pthreads.7.html
在Windows上:線程ID在整個計算機上是唯一的: https : //msdn.microsoft.com/zh-cn/library/windows/desktop/ms686746(v=vs.85).aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.