c# 等待某个标志置位后再执行其它操作
时间: 2023-08-29 09:04:38 浏览: 119
C#载入及等待图标控件
4星 · 用户满意度95%
在C#中,可以使用ManualResetEvent类实现等待某个标志置位后再执行其它操作。下面是一个示例代码:
```csharp
ManualResetEvent mre = new ManualResetEvent(false);
// 在另一个线程中设置标志
Thread thread = new Thread(() => {
// 执行一些操作
mre.Set(); // 标志置位
});
thread.Start();
// 在当前线程中等待标志置位
mre.WaitOne();
// 标志已经置位,执行其它操作
Console.WriteLine("标志已经置位,可以执行其它操作了。");
```
在上面的代码中,我们创建了一个ManualResetEvent对象,并将其初始化为false。然后,我们创建了一个新的线程,在其中执行一些操作,并在操作完成后将标志设置为true。在主线程中,我们调用mre.WaitOne()来等待标志置位。这个方法会阻塞当前线程,直到标志被设置为true。
当标志被置位后,我们可以执行任何需要等待标志置位后才能进行的操作。在上面的代码示例中,我们输出了一条消息来表示标志已经置位,可以执行其它操作了。
阅读全文