In C# können Sie beim Debuggen von Threads zum Beispiel die ID jedes Threads sehen.
Dies sind die Ids der verwalteten Threads. ManagedThreadId
ist ein Mitglied von Thread
so können Sie die Id von jedem Thema Objekt. Damit erhalten Sie das aktuelle ManagedThreadID :
Thread.CurrentThread.ManagedThreadId
Um einen OS-Thread anhand seiner OS-Thread-ID zu ermitteln (nicht ManagedThreadID) können Sie ein wenig Linq ausprobieren.
int unmanagedId = 2345;
ProcessThread myThread = (from ProcessThread entry in Process.GetCurrentProcess().Threads
where entry.Id == unmanagedId
select entry).First();
Es scheint, dass es keine Möglichkeit gibt, die verwalteten Threads aufzuzählen und keine Beziehung zwischen ProcessThread und Thread, so dass es schwierig ist, einen verwalteten Thread anhand seiner Id zu finden.
Weitere Einzelheiten zu Managed vs. Unmanaged Threading finden Sie unter dieser MSDN-Artikel .