C# ThreadState
时间: 2023-08-31 16:11:42 浏览: 228
C# threading
C# ThreadState 是一个枚举类型,用于表示线程的当前状态。它包含以下几种可能的状态:
1. Unstarted:线程还未启动。
2. Running:线程正在运行。
3. WaitSleepJoin:线程正在等待、睡眠或者加入其他线程。
4. Suspended:线程已被挂起。
5. Stopped:线程已停止。
6. Background:线程是后台线程。
7. AbortRequested:线程正在等待终止请求。
8. Aborted:线程已终止。
你可以通过检查线程的 ThreadState 属性来获取线程的当前状态。例如:
```csharp
Thread thread = new Thread(MyThreadMethod);
thread.Start();
// 获取线程状态
ThreadState state = thread.ThreadState;
// 判断线程是否正在运行
if (state == ThreadState.Running)
{
Console.WriteLine("线程正在运行");
}
// 判断线程是否已停止
if (state == ThreadState.Stopped)
{
Console.WriteLine("线程已停止");
}
```
需要注意的是,由于线程状态可能会发生变化,所以在获取状态后可能会发生变化。因此,在使用线程状态时,最好进行适当的同步和处理。
阅读全文