C#怎么判断线程有没有绑定事件
时间: 2023-09-11 19:12:18 浏览: 85
在C#中,可以使用以下方法判断线程是否绑定了事件:
1.使用Thread类的GetInvocationList()方法获取线程的委托列表,然后判断列表是否为空。
例如:
```csharp
if (myThread.GetInvocationList() != null)
{
// 线程已经绑定了事件
}
```
2.使用线程的ThreadState属性,判断线程是否处于等待状态。如果线程处于等待状态,则说明线程已经绑定了事件。
例如:
```csharp
if (myThread.ThreadState == ThreadState.WaitSleepJoin)
{
// 线程已经绑定了事件
}
```
需要注意的是,以上方法只适用于线程绑定了事件并且正在等待触发事件的情况。如果线程没有绑定事件或者事件已经触发完毕,以上方法都会返回false。
阅读全文