在 C# 中擷取執行緒 ID
在 C# 中進行偵錯時,Visual Studio 會顯示每個執行緒的 ID。但是,開發人員可能希望以程式設計方式存取此資訊。
託管線程
對於託管線程,System.Environment.CurrentManagedThreadId 屬性提供當前線程的 ID。或者,Thread.CurrentThread.ManagedThreadId 也具有相同的用途。
本機執行緒
Visual Studio 透過 GetThreadId 函數取得本機執行緒的 ID。要檢索特定執行緒的句柄,請使用以下程式碼:
// Code for retrieving a thread handle with a specific ID if (IntPtr.Size == 4) { // 32-bit process ThreadHandle threadHandle = Win32.OpenThread(ThreadAccess.READ_CONTROL, false, threadId); } else { // 64-bit process ThreadHandle threadHandle = Win32.OpenThread(ThreadAccess.READ_CONTROL, false, threadId.ToInt64()); }
託管執行緒的已棄用選項
較舊的SDK 也提供了檢索ID的已棄用選項目前管理的執行緒:
以上是如何在 C# 中以程式設計方式檢索線程 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!