簡體   English   中英

多處理池工作程序中的線程標識符

[英]Thread identifier in multiprocessing pool workers

我相信Thread.identThread.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM