如何确定Thread对象是否是.NET中的当前线程?

Jer*_*emy 3 .net c# multithreading

假设我有一个Thread对象的引用,例如:

System.Threading.Thread thread;
Run Code Online (Sandbox Code Playgroud)

如果我想确定当前线程是否由此对象表示,是否应使用以下代码?

bool currentThread = (thread.ManagedThreadId == Thread.CurrentThread.ManagedThreadId);
Run Code Online (Sandbox Code Playgroud)

我很确定这样可以正常工作,但似乎很奇怪,没有更直接的方法来检查它.有吗?

Pla*_*ure 9

只需使用Thread.CurrentThread:

bool currentThread = (thread == Thread.CurrentThread);
Run Code Online (Sandbox Code Playgroud)