生活工程体验信仰哲学精神
投稿投诉
精神世界
探索历史
哲学文学
艺术价值
信仰创造
境界审美
体验技术
技能工具
工程信息
医学生产
生活运用
操作能力

3。线程是否按照启动顺序执行

1月1日 封了心投稿
  前言线程是按照启动顺序执行的吗?如何确保线程按照启动顺序执行?Thread。join()如何却确保线程按照启动顺序执行的?线程按照启动顺序执行
  调用Thread的start()方法启动线程时,线程的执行顺序是不确定的。也就是说,在同一个方法中,连续创建多个线程后,调用线程的start()方法的顺序并不能决定线程的执行顺序。
  看一个简单的示例程序,如下所示。
  示例程序1
  在ThreadSort01类中分别创建了三个不同的线程,thread1、thread2和thread3,接下来,在程序中按照顺序分别调用thread1。start()、thread2。start()和thread3。start()方法来分别启动三个不同的线程。
  第一次执行顺序thread1thread3thread2
  第二次执行顺序thread2thread3thread1
  第三次执行顺序thread1thread2thread3
  可以看到,每次运行程序时,线程的执行顺序可能不同。线程的启动顺序并不能决定线程的执行顺序。如何确保线程的执行顺序
  可以使用Thread类中的join()方法来确保线程的执行顺序。示例代码如下:
  示例程序2
  第一次执行顺序thread4thread5thread6
  第二次执行顺序thread4thread5thread6
  第三次执行顺序thread4thread5thread6
  可以看到,每次运行的结果都是相同的,所以,使用Thread的join()方法能够保证线程的先后执行顺序。Thread。join()如何却确保线程按照启动顺序执行的
  既然Thread类的join()方法能够确保线程的执行顺序,我们就一起来看看Thread类的join()方法到底干了什么。
  进入Thread的join()方法,如下所示:
  Thread。join()源码
  可以看到join()方法调用同类中的一个join(longmillis)方法,并传递参数0。继续查看join(longmillis),如下:
  Thread。join(longmillis)源码
  可以看到join(longmillis)方法使用了synchronized修饰,意味着这个方法同一时刻只能由一个实例或方法调用。如果入参millis为0,则在判断线程是处于活跃状态之后调用wait(0);如果millis不为0,则计算延迟时间delay,调用wait(delay)。继续跟进wait方法,如下:
  Thread。wait()
  wait()方法是一个本地方法,通过JNI的方式调用JDK底层来使线程等待执行完成。
  注意:wait的作用是释放对象锁,释放CUP资源,使当前线程阻塞,进入对象的waitset,直到被通知、被中断或timeout到期。即会使主线程(调用join()方法的线程)进入阻塞状态,等待子线程执行完成后再次向下执行。验证主线程调用Thread。join()是否会等待子线程执行完毕后继续执行
  创建三个线程thread4、thread5、thread6,线程thread4输出之后sleep20秒,再执行thread5、thread6。
  验证主线程是否会等待子线程执行完毕后继续执行
  执行代码会发现,程序会在执行thread4完输出,等待20秒之后,继续执行thread5、thread6。即在调用join()方法之后阻塞主线程,等待子线程执行完之后继续向下执行。
投诉 评论

三国武将武力排名为尽可能逻辑严密、不带入主观立场地进行评比,确立几个原则,并进行分析:(1)两将对战,除特殊情形,不存在放水。李典劝阻曹仁去打新野,在对阵赵云时,约战十数合,李典料敌不过……看72岁奶奶级网络红人的教育观尊重孩子是家庭教育的起点一头标志性白发,坚定而睿智的眼神,她就是在71岁写下《人生由我》的作者,梅耶。马克斯,也是一位成功的企业家,资深的营养师,知名时尚偶像,72岁仍活跃在舞台上的高龄模特和网络红人……杨毅王治郅曾经认为他和德克的水平相当,只是后者比他早去NBA最近杨毅在一档节目中透露,王治郅曾经和他说过,诺维茨基和他基本上两个人都是难分伯仲,只是诺维茨基比他早来一年NBA,所以在NBA能立足,如果他能早点来NBA或许就不是的结局。对……更小更强,14mm动圈入耳检测,SoundPEATSAir3从一开始接触SoundPEATS到现在已经有半年多的时间了,期间自己购买过,也推荐朋友购买过,最近朋友让推荐一款白色的半入耳式耳机,我同样第一个就想到了SoundPEATS,经……龙途天下绿色征途交易系统怎么玩天子战盟王者纪元交易行玩法攻略哈喽,大家好呀,我是爱玩游戏的软软呀,欢迎来到【爱玩游戏的软软】。软软今天想给大家讲讲征途手游龙途天下的相关攻略。交易系统在很多游戏中都是很重要的存在,同样龙途天下中也是有交易……你们相信存在时空之门吗?1995年,科学家们在南极考察的时候,发现上空中突然出现了一种白色的迷雾,看起来好像是一团浓烟一样,这些浓烟不断地旋转而且还互相缠绕着,一开始,科学家们认为这应该是某种天气现象……明早十点锁定雷总卢总微博,MIUI13和小米12明早开始预热期待已久的小米12系列和MIUI13终于要和我们见面了,这次小米12带来三个系列,小米12mini,小米12,小米12Pro另外小米Civi系列将由馨心接管,定位女性拍照……实现业界超高跑分,华为公司Mate30带来了惊喜伴随着人们生活水平的提高,大家对记录生活的需求也在不断地提高,因此,智能手机产品在摄影方面也开启了新一轮的玩法比拼,与其他手机厂商还停留在拍照功能的升级上相比,科技华为公司已经……3。线程是否按照启动顺序执行前言线程是按照启动顺序执行的吗?如何确保线程按照启动顺序执行?Thread。join()如何却确保线程按照启动顺序执行的?线程按照启动顺序执行调用Thread的start……A股何时能涨到5000点?3000点是地平线,5000点是什么呢?A股何时能够涨到5000点?这是股民朋友非常关心的问题!在股市中,我已经征战10多年了。对于市场的走势,也有了一套比较……英雄联盟手游与端游的区别端游老玩家,lol手游目前15级。说一下优缺点还有建议。我个人觉得对比端游,还原度比较高了。从装备到英雄到技能,还原度有70以上。不少英雄和装备做了改动……新年礼物太难选?来看看这4款真香数码产品,颜值实用性都拉满春节越来越近,大家的新年礼物都准备好了吗?相信有不少朋友正在苦恼该买什么礼物,如果你不知道新年送什么礼物,那么恭喜你,往下看也许你就有答案了!一款设计精致、实用性高的数码……
新疆美景上了北京冬奥会开幕式美专家明目张胆威胁印度知道华盛顿的权力多大吗?看看华为中兴王祖贤我痴心对齐秦15年,他却背着我养私生子,此生不再信爱情京郊户外徒步穿越路线分享分水岭黄花城水长城银行存款继承流程是怎样的夜尿频多怎么办,这个方法让你不再起夜伊西斯龙王鲸非常凶残生活在三千万年前的地球上东航遇难者,这一个个年轻人!一声叹无常姑父的拿手菜在一起丁几何的原型人物是谁药袋哥丰枫的故事是怎样新起点为什么银行工作人员一定让客户开通网银有沉迷于游戏对大脑有哪些影响悬念迭起尺度惊人,没等来白夜追凶2,却被这部网剧吓破胆本田URV实拍370TURBO四驱尊享版,5座定位配2。0T台东海域,岛内与日本爆发冲突,三艘船对峙10个小时职场正能量的语录智联电动自行车北斗应用示范工程启动,年内将推出100万辆摩天大楼一般设计寿命是多少年?如果摩天大楼成为危楼怎么办?明朝皇帝墓碑为什么都是无字碑我的新舞台换季也要换发型!渣女头、麦穗卷、少年感短发今年最火发型哪一款我眼中的幸福庆祝六一儿童节活动总结

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找