线程join方法用处「建议收藏」

线程join方法用处「建议收藏」参考博客:https://www.cnblogs.com/lcplcpjava/p/6896904.html第一种情况(不使用join):ThreadJoinTestt1=newThreadJoinTest(“小明”);ThreadJoinTestt2=newThreadJoinTest(“小东”);t1.start();

大家好,又见面了,我是你们的朋友全栈君。

参考博客:https://www.cnblogs.com/lcplcpjava/p/6896904.html

第一种情况(不使用join):

        ThreadJoinTest t1 = new ThreadJoinTest("小明");
        ThreadJoinTest t2 = new ThreadJoinTest("小东");
        t1.start();        
        t2.start();

这种情况下,线程t1、线程t2公平争抢

第二种情况(join的作用):

        ThreadJoinTest t1 = new ThreadJoinTest("小明");
        ThreadJoinTest t2 = new ThreadJoinTest("小东");
        t1.start();        
        t1.join();
        t2.start();

线程t1、线程t2使得原来公平争抢,变成了线程t1调用join的这个线程,线程t1拥有了更高的权限(t1线程跑完了,t2才会走)

第三种情况(join不起作用):

        ThreadJoinTest t1 = new ThreadJoinTest("小明");
        ThreadJoinTest t2 = new ThreadJoinTest("小东");
        t1.join();
        t1.start();      
        t2.start();

线程t1、线程t2交替争抢(join不起作用)

原因:采用上面博客的结论
join方法是通过调用线程的wait方法来达到同步的目的的。例如,A线程中调用了B线程的join方法,则相当于A线程调用了B线程的wait方法,在调用了B线程的wait方法后,A线程就会进入阻塞状态

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141857.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Vue2.4中$attrs和$listeners的使用-学习笔记

    Vue2.4中$attrs和$listeners的使用-学习笔记首先我们来看下面的一张图,图中表示一个多级组件嵌套的情形。现在我们来讨论一种情况,A组件与C组件怎么通信,我们有多少种解决方案?我们使用VueX来进行数据管理,但是如果项目中多个组件共享状态比较少,项目比较小,并且全局状态比较少,那使用VueX来实现该功能,并没有发挥出VueX的威力。 使用B来做中转站,当A组件需要把信息传给C组件时,B接受A组件的信息,然后利用属性传给C组件,这是…

    2022年10月18日
  • shell 编译和执行java文件

    shell 编译和执行java文件

  • 进程调度有可抢占 哪种开销更大_什么时候用多线程什么时候用多进程

    进程调度有可抢占 哪种开销更大_什么时候用多线程什么时候用多进程线程调度为什么比进程调度更少开销?在对比进程调度与线程调度的开销前,我们需要明白两点:进程与线程的差异任务调度的开销进程与线程的差异我们首先要明白,线程和进程有什么关系?从概念上来讲,线程是进程的一部分,只是任务调度相关的部分,所以我们才说,“线程是调度的最小单位”。进程拥有着资源,这些资源不属于某一个特定线程,因为所有线程共享进程拥有的资源,所以我们才说,“进程是资源分配的最小单位…

  • 模仿学习(Imitation Learning)入门

    模仿学习(Imitation Learning)入门在游戏中,我们往往有一个计分板准确定义事情的好坏程度。但现实中,定义Reward有可能是非常困难的,并且人定的reward也有可能存在许多意想不到的缺陷。在没有reward的情况下,让AI跟环境互动的一个方法叫做Imitation-Learning。在没有reward的前提下,我们可以找人类进行示范,AI可以凭借这些示范以及跟环境的互动进行学习。这种模仿学习使得智能体自身不必从零学起,不必去尝试探索和收集众多的无用数据,能大大加快训练进程。这跟supervised-learning有类似之处,如果采用这种

  • 2021年职称计算机考试模块,2021年职称计算机考试模块photoshop基础试题4.doc「建议收藏」

    2021年职称计算机考试模块,2021年职称计算机考试模块photoshop基础试题4.doc「建议收藏」2021年职称计算机考试模块photoshop基础试题41..下列哪个是photoshop图象最基本的组成单元:A.节点B.色彩空间C.象素D.路径正确答案:C2.下面对矢量图和象素图描述正确的是:A.矢量图的基本组成单元是象素B.象素图的基本组成单元是锚点和路径C.AdobeIllustrator9图形软件能够生成矢量图D.Adobephotoshop6能够生成矢量图正…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号