zoukankan      html  css  js  c++  java
  • 线程join 方法

    指在一线程里面调用另一线程join方法时,表示将本线程阻塞直至另一线程终止时再执行  
      比如  

    Java代码 复制代码 收藏代码
    1.  using System;   
    2.   
    3.  namespace TestThreadJoin   
    4.  {   
    5.      class Program   
    6.      {   
    7.          static void Main()   
    8.          {   
    9.              System.Threading.Thread x = new System.Threading.Thread(new System.Threading.ThreadStart(f1));   
    10.             x.Start();   
    11.             Console.WriteLine("This is Main.{0}"1);   
    12.             x.Join();   
    13.             Console.WriteLine("This is Main.{0}"2);   
    14.             Console.ReadLine();   
    15.         }   
    16.         static void f1()   
    17.         {   
    18.             System.Threading.Thread y = new System.Threading.Thread(new System.Threading.ThreadStart(f2));   
    19.             y.Start();   
    20.             y.Join();   
    21.             Console.WriteLine("This is F1.{0}",1);   
    22.         }   
    23.   
    24.         static void f2()   
    25.         {   
    26.             Console.WriteLine("This is F2.{0}"1);   
    27.         }   
    28.     }   
    29. }  
     using System;
    
     namespace TestThreadJoin
     {
         class Program
         {
             static void Main()
             {
                 System.Threading.Thread x = new System.Threading.Thread(new System.Threading.ThreadStart(f1));
                x.Start();
                Console.WriteLine("This is Main.{0}", 1);
                x.Join();
                Console.WriteLine("This is Main.{0}", 2);
                Console.ReadLine();
            }
            static void f1()
            {
                System.Threading.Thread y = new System.Threading.Thread(new System.Threading.ThreadStart(f2));
                y.Start();
                y.Join();
                Console.WriteLine("This is F1.{0}",1);
            }
    
            static void f2()
            {
                Console.WriteLine("This is F2.{0}", 1);
            }
        }
    }


    这儿有三个线程在处理(包括主线程),大家可看看执行结果.
    结果:
    This is Main.1
    This is F2.1
    This is F1.1
    This is Main.2

    如果: 注释//  x.Join();
    结果:
    This is Main.1
    This is Main.2
    This is F2.1
    This is F1.1
  • 相关阅读:
    laravel 资源控制器方法列表
    laravel 用户认证简单示例
    使用Faker库生成模拟数据
    js获取世界不同时区的当前时间
    html2canvas将页面内容生成图片
    canvas绘制环形进度条
    H5 实现图片上传预览
    js实现复制内容到粘贴板
    node.js创建简单服务测试请求数据
    ES6语法知识
  • 原文地址:https://www.cnblogs.com/NovaXie/p/2651870.html
Copyright © 2011-2022 走看看