在 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中文网其他相关文章!