Heim >Backend-Entwicklung >C++ >Wie rufe ich verwaltete und native Thread-IDs in C# ab?

Wie rufe ich verwaltete und native Thread-IDs in C# ab?

Linda Hamilton
Linda HamiltonOriginal
2024-12-25 16:01:17152Durchsuche

How to Retrieve Managed and Native Thread IDs in C#?

Abrufen von Thread-IDs in C#

Bei der Arbeit mit Multithread-Anwendungen kann es nützlich sein, die eindeutige Kennung eines bestimmten Threads abzurufen. In C# gibt es zwei Möglichkeiten, Thread-IDs abzurufen:

1. Verwaltete Thread-IDs

Verwaltete Thread-IDs sind über die Eigenschaft System.Environment.CurrentManagedThreadId verfügbar. Diese Eigenschaft gibt die eindeutige Kennung für den aktuell verwalteten Thread zurück:

Console.WriteLine("Managed thread ID: {0}", System.Environment.CurrentManagedThreadId);

2. Native Thread-IDs

Native Thread-IDs sind über die GetThreadId-Funktion in der System.Diagnostics.Process-Klasse verfügbar. Diese Funktion erfordert die Übergabe des Handles des Threads, dessen ID Sie abrufen möchten:

using System.Diagnostics;

Process currentProcess = Process.GetCurrentProcess();
foreach (ProcessThread thread in currentProcess.Threads)
{
    Console.WriteLine("Native thread ID: {0}", thread.Id);
}

Es ist wichtig zu beachten, dass die Konsistenz nativer Thread-IDs bei verschiedenen Ausführungen desselben Programms nicht garantiert werden kann. Verwaltete Thread-IDs hingegen bieten eine stabilere Kennung für Threads.

Das obige ist der detaillierte Inhalt vonWie rufe ich verwaltete und native Thread-IDs in C# ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn