class Program
{
public static void DoWork()
{
Console.WriteLine("Do work start..");
DoworkSignaledResetEvent.Set();
MainSignaledResetEvent.Wait();
Console.WriteLine("Do Work finished..");
}
static ManualResetEventSlim MainSignaledResetEvent;
static ManualResetEventSlim DoworkSignaledResetEvent;
public static void Main()
{
using (MainSignaledResetEvent = new ManualResetEventSlim())
using (DoworkSignaledResetEvent = new ManualResetEventSlim())
{
Console.WriteLine("app started..");
Task task = Task.Run(() => DoWork());
DoworkSignaledResetEvent.Wait();
Console.WriteLine("Waiting while thread executing..");
Thread.Sleep(1000);
MainSignaledResetEvent.Set();
task.Wait();
Console.WriteLine("Thead Finished..");
Console.WriteLine("App finished..");
}
Console.Read();
}
}
C# ManualResetEventSlim
最新推荐文章于 2024-05-28 11:43:13 发布