c# 中countdownevent的使用
class Program { static CountdownEvent _count = new CountdownEvent(3); static void Main(string[] args) { Task.Factory.StartNew(() => { Thread.Sleep(2000); Console.WriteLine("thread 1 complete"); _count.Signal(); }); Task.Factory.StartNew(() => { Thread.Sleep(5000); Console.WriteLine("thread 2 complete"); _count.Signal(); }); Task.Factory.StartNew(() => { Thread.Sleep(3000); Console.WriteLine("thread 3 complete"); _count.Signal(); }); Console.WriteLine("waiting tasks...."); _count.Wait(); Console.WriteLine("all task completed"); Console.ReadKey(); } } 使用TASK的waitAll可以达到同样的效果: var t1 = Task.Factory.StartNew(() => { Thread.Sleep(2000); Console.WriteLine("thread 1 complete"); }); var t2 = Task.Factory.StartNew(() => { Thread.Sleep(5000); Console.WriteLine("thread 2 complete"); }); var t3 = Task.Factory.StartNew(() => { Thread.Sleep(3000); Console.WriteLine("thread 3 complete"); }); Console.WriteLine("waiting tasks...."); Task.WaitAll(t1, t2, t3); Console.WriteLine("all task completed"); Console.ReadKey();
以上就是c# 中CountDownEvent的使用的内容,更多相关内容请关注PHP中文网(www.php.cn)!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号