• 技术文章 >后端开发 >C#.Net教程

    c# 中CountDownEvent的使用

    黄舟黄舟2017-03-01 10:50:53原创1334
    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中文网(m.sbmmt.com)!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:c#,CountDownEvent
    上一篇:C# 将多个Image 合成为一个,格式可选择 下一篇:C# 托盘程序 实例 双击显示窗体,最小化到托盘
    千万级数据并发解决方案

    相关文章推荐

    • 一文聊聊C语言中的字符串操作(大小写转换、比较、排序等)• 分享一道逻辑面试题,看看你能答对吗!• C#数组学习• C# 动态加载Dll• SUNWEN教程之----C#进阶(九)
    1/1

    PHP中文网