回答

1

根据平台的不同,ID可能是唯一的也可能不是唯一的。这里要注意的重要一点是,python多处理库实际上使用进程而不是线程进行多处理,因此进程之间的线程ID实际上是一个特定于平台的实现细节。

在Unix/Linux上:线程ID在单个进程中保证是唯一的。但是,线程ID并不保证在进程间是唯一的。然而,processid(pid)在整个流程中将是唯一的。因此,您可以通过将两者放在一起来获得唯一的标识符。从man pthread页面http://man7.org/linux/man-pages/man7/pthreads.7.html

在窗口详细信息:线程ID是在整个机独特:https://msdn.microsoft.com/en-us/library/windows/desktop/ms686746(v=vs.85).aspx

+0

是否记载,线程ID是每个进程的独特之处? – Reith

+0

@ 0x2c52我不得不为此搜索一下,这样做,我会澄清我的答案。它看起来像整个机器上的windows线程应该是唯一的,而linux线程在这个过程中将是唯一的。从man pthreads:http://man7.org/linux/man-pages/man7/pthreads.7.html - “线程ID保证只在一个进程内唯一(在 中,所有接受线程的pthreads函数ID作为参数, ID根据定义引用与 调用方在同一进程中的线程。)“Windows:https://msdn.microsoft.com/en-us/library/windows/desktop/ms686746(v = vs.85)的.aspx –