java多线程—Thread.Join()和Thread.Sleep()

java多线程—Thread.Join()和Thread.Sleep()

大家好,又见面了,我是全栈君。

注:
join方法的功能就是使异步执行的线程变成同步执行。也就是说,当调用线程实例的start方法后,这个方法会立即返回,如果在调用start方法后后需要使用一个由这个线程计算得到的值,就必须使用join方法。如果不使用join方法,就不能保证当执行到start方法后面的某条语句时,这个线程一定会执行完。而使用join方法后,直到这个线程退出,程序才会往下执行。

这两天一直在研究Thread的调度,把成果拿出来,大家分享一下!本来昨天想要写这篇文章的,无奈51cto的网站不过,无法写!只有推迟到今天!废话不多说!下面是成果!
   

 thread1.Join()//这样写是告诉大家它不是静态方法
         * 三个重载方法,基本功能相同,都是阻塞掉当前代码运行的线程,只有当thread1线程执行完毕,阻塞掉的线程才重新进入运行状态
         * ①thread1.join(),无参无返回值,如果调用该方法时,thread1终止,则返回,否则,被阻塞的线程就永远阻塞下去
         * ②thread1.join(int) 参数是超时时间(单位ms),返回bool,如果在超时时间内thread1终止,则返回true,同时被阻塞的线程进入运行状态,
         *     否则,返回false,同时被阻塞的线程和thread1都处于运行状态,并且交替执行
         * ③thread1.join(timespan)同②。
         * 
         * 
         *线程中设计join方法的意义(个人理解):实现了线程的顺序执行,而线程的顺序执行就有同步的意义,所以这里也可以看做线程同步的一种方式
         */
        /*thread1.Sleep(time)
           两个重载方法功能相同都是,让当前线程休眠一段时间,时间过后就唤醒,但是唤醒后不一定就重新进行调度,但是sleep一次肯定就要重新进行一次调度
         * sleep的意义就是为了防止优先级高的线程(而又需要花费大量Cpu时间的)长期占有Cpu时间,使得其他的线程出现饿死状态,当然不会真的出现饿死状态
         * 或者是某优先级高的线程不想再未来一段时间内参与cpu竞争也可以调用该方法。
         */
作者:ATually_Miao

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/121263.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vim :wq(vim和emacs谁快)

    转自:http://blog.csdn.net/yuan892173701/article/details/7772957vim是Unix/Linux系统最常用的编辑器之一,在保存文件时,我通常选择”:wq“,因为最开始学习vim的时候,就只记住了几个常用的命令;也没有细究命令的含义。    但是,最近我在编译代码时发现,在没有修改源文件的情况下,仅仅使用”:wq“命令保存

    2022年4月11日
    71
  • 写给零基础入坑蓝桥杯的同学

    写给零基础入坑蓝桥杯的同学以下为2020.1.9更新

    2022年7月14日
    10
  • ioctl函数详解_lseek函数

    ioctl函数详解_lseek函数ioctl 函数 本函数影响由fd 参数引用的一个打开的文件。 #include<unistd.h>int ioctl(intfd,intrequest,…/*void*arg*/);返回0 :成功   -1 :出错 第三个参数总是一个指针,但指针的类型依赖于request 参数。我们可以把和网络相关的请求划分为6&nbsp…

    2022年10月17日
    1
  • 自定义web接收推送_Java Web

    自定义web接收推送_Java Webhttps://www.webjars.org/提供了很多js的jar,但是有时候有些js没有,我们也想打成jar,那怎么办?我们以jquery3.4.1版本为例子开始1.创建如下结构pom文件内容如下:<?xmlversion=”1.0″encoding=”UTF-8″?><projectxmlns=”http://maven.apache….

    2025年7月10日
    3
  • 固态硬盘数据恢复商家梳理[通俗易懂]

    固态硬盘数据恢复商家梳理[通俗易懂]整理了几家固态硬盘数据恢复商家联系方式,分享给大家。淘宝店名 地址 联系人 电话 价格 成功率 备注 ccbccr服务旗舰店 北京市海淀区中关村中科大厦A座14层1408 辛师傅 13269874833 2000-5000 50% 不许一直在现场看 云光科技数据恢复中心 河北张家口市涿鹿合符大街合符北区8-3-401 陈晓光 13522121334 400 80% 可以到现场观看修复过程

    2022年9月20日
    2
  • SpringBoot——MyBatisPlus

    SpringBoot——MyBatisPlusSpringBoot——MyBatisPlus

    2022年4月23日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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