获取线程ID

可能重复:
C#/ .NET:如何从线程中获取线程ID?

我如何获得与在Visual Studio中看到的相同的线程ID?

我曾尝试使用Thread.CurrentThread.ManagedThreadId ,但我得到了不同的数字。

我得到35,38,39等,但在Visual Studio中我有10596,893等…

使用GetCurrentThreadId()或ManagedThreadId()来获取线程ID:

 int threadID = (int)AppDomain.GetCurrentThreadId(); int managedThreadId = Thread.CurrentThread.ManagedThreadId; Console.WriteLine("ThreadId = " + threadID); Console.WriteLine("ManagedThreadId = " + managedThreadId); 

看一下Stack Overflow问题从线程中获取线程ID

您可以使用WinApi函数GetCurrentThreadId和GetThreadId

如果您在实时应用程序中看到不同的线程ID,而不是在Visual Studio中进行调试,那么这正是您应该看到的,对吧?

在调试器中运行时,您实际上在调试器主机中运行应用程序,该主机将具有不同于仅运行应用程序的线程。