一个线程在执行的过程中,可能调用另一个线程,前者可以称为调用线程,后者成为被调用线程。

Thread.Join方法的使用场景:调用线程挂起,等待被调用线程执行完毕后,继续执行。

如下案列:

当NewThread调用Join方法的时候,MainThread就被停止执行,直到NewThread线程执行完毕,才会接着再去执行。(转载)

static void Main(string[] args)
{
Thread.CurrentThread.Name = "MainThread"; Thread newThread = new Thread(new ThreadStart(Program.ThreadFuncOne));
newThread.Name = "NewThread"; for (int j = ; j < ; j++)
{
if (j == )
{
newThread.Start();
newThread.Join();
}
else
{
Console.WriteLine(Thread.CurrentThread.Name + " j = " + j);
}
}
Console.Read();
} private static void ThreadFuncOne()
{
for (int i = ; i < ; i++)
{
Console.WriteLine(Thread.CurrentThread.Name + " i = " + i);
}
Console.WriteLine(Thread.CurrentThread.Name + " has finished");
}

Thread的join方法的更多相关文章

  1. Thread线程join方法自我理解

    Thread线程join方法自我理解 thread.join():等待thread线程运行终止,指的是main-thread(main线程)必须等待thread线程运行结束,才能继续thread.jo ...

  2. Thread 的join方法

    package com.cn.test.thread; public class TestJoin extends Thread{ private String name; public TestJo ...

  3. 浅析Thread的join() 方法

    Thread中的 join() 方法在实际开发过程中可能用的不是很多,但是在面试中作为考察基本功知识的扎实与否,经常会被用到.因此,对于 Thread 的 join() 方法进行了一定的研究. 常见的 ...

  4. python thread的join方法解释

    python的Thread类中提供了join()方法,使得一个线程可以等待另一个线程执行结束后再继续运行.这个方法还可以设定一个timeout参数,避免无休止的等待.因为两个线程顺序完成,看起来象一个 ...

  5. 8.Thread的join方法

    1.Thread类的join方法表示:当前线程执行结束再执行其它线程!在Thread类中有三个重载的方法分别是: public final synchronized void join(long mi ...

  6. java线程基础巩固---分析Thread的join方法详细介绍,结合一个典型案例

    关于Thread中的join方法貌似在实际多线程编程当中没怎么用过,在当初学j2se的时候倒时去学习过它的用法,不过现在早已经忘得差不多啦,所以对它再复习复习下. 首先先观察下JDK对它的介绍: 其实 ...

  7. Thread中join()方法进行介绍

    http://www.cnblogs.com/skywang12345/p/3479275.html https://blog.csdn.net/dabing69221/article/details ...

  8. 浅谈Java多线程中的join方法

    先上代码 新建一个Thread,代码如下: package com.thread.test; public class MyThread extends Thread { private String ...

  9. Java多线程中的join方法

    新建一个Thread,代码如下: package com.thread.test; public class MyThread extends Thread { private String name ...

随机推荐

  1. 吴裕雄 python 机器学习——多维缩放降维MDS模型

    # -*- coding: utf-8 -*- import numpy as np import matplotlib.pyplot as plt from sklearn import datas ...

  2. ASA许可证

    每台安装了BASE license的ASA平台都自带了一些隐藏的特性和功能.根据不同国际出口规则,有些ASA上安装的有可能是NO Payload Encryption license.这种许可证会绑定 ...

  3. 【Python】字符串(String)

    python中单引号和双引号使用完全相同. 使用三引号('''或""")可以指定一个多行字符串. 转义符 '\' 反斜杠可以用来转义,使用r可以让反斜杠不发生转义.. 如 ...

  4. 每日扫盲(一):java的rmi

    JAVA RMI 原理和使用浅析 本地对象调用 我们先看看本地对象方法的调用: ObjectClass objectA = new ObjectClass(); String retn = objec ...

  5. swing开发一个修改项目数据库连接参数配置文件

    我们在开发web项目中,经常有properties配置文件配置数据库连接参数,每次修改的时候还要去找到配置文件,感觉有点麻烦,就用swing做了个小工具修改参数,运行界面如下: =========== ...

  6. python进阶(十七)正则&json(上)

    1. 一个列表中所有的数字都是重复2次,但是有一个数字只重复了一次. 请找出重复一次的数字,不可以使用内置函数. [2,2,1,1,0,4,3,4,3] 方法1:通过字典计数,找到value等于1的k ...

  7. Python - 字符串为多行时,转换为列表

    例如一个IP代理池,这是个字符串,有多行 120.236.137.65:8060 193.112.208.216:8118 121.8.98.198:80 121.8.98.197:80 121.8. ...

  8. Springmvc-crud-03(静态资源错误)

    错误描述:静态资源加载失败 原因:spring会拦截静态资源 解决办法: <!-- 配置spring支持静态资源请求 --> <mvc:default-servlet-handler ...

  9. ubuntu mysql新增用户并开启远程连接

    1.首先用root用户登录mysql mysql -u root -p 输入密码后登录成功 2.新建用户 use mysql; select host,user from user;(查看现有用户) ...

  10. Spring 7种事务传播类型

    转载:https://www.cnblogs.com/originate918/p/6226342.html PROPAGATION_REQUIRED及其他6种事务传播行为种类. Spring在Tra ...