zoukankan      html  css  js  c++  java
  • c#多线程(三)

    代码
           #region 信号使用于任务分解
            
            
    static EventWaitHandle ready=new AutoResetEvent(false);
            
    static EventWaitHandle go=new AutoResetEvent(false);
            
    static volatile string task="";
            
    static void WaitEventHandlerThreadTest()
            {
                
    //一个任务分解为多个线程来完成
                new Thread(DoWorker).Start();
                
    for (int i=0;i<5 ;i++ ) 
                {
                    ready.WaitOne();
    //首先工作线程等待,直到工作线程准备好。
                    task="a".PadRight(i,'h'); //给工作任务赋值
                    go.Set();  //然后开始执行
                }
                ready.WaitOne();task
    =null;go.Set();
            }
            
            
    static void DoWorker()
            {
                
    while(true)
                {
                    ready.Set(); 
    //说明该线程已经准备好。
                    go.WaitOne(); //然后等待退出
                    if(task==null)return//退出线程
                    Console.WriteLine(task);
                }
            }
            
    #endregion
            
            
    #region 测试线程jion方法
            
            
    static void JoinThreadTest()
            {
                Thread t
    =new Thread(delegate()
                           {
                                        
    //while(true)
                                        
    //{
                                            Console.ReadLine();
                                        
    //}
                           });
                t.Start();
                t.Join();
                Console.WriteLine(
    "Thread ReadLine is complete!");
            }
            
            
    #endregion
  • 相关阅读:
    列表的创建02
    python如何设置注释模板,文件模板
    python语言使用rsa密码算法对数据加密时不能对中文加密问题的解决
    python编码解码,字符数据转换问题(自学笔记)
    字符串与数组之间的互相转换
    vc++文本编辑
    OCP 062【中文】考试题库(cuug内部资料)第28题
    OCP 062【中文】考试题库(cuug内部资料)第27题
    OCP 062【中文】考试题库(cuug内部资料)第26题
    OCP 062【中文】考试题库(cuug内部资料)第25题
  • 原文地址:https://www.cnblogs.com/csharponworking/p/1630924.html
Copyright © 2011-2022 走看看