各位看官,我去年路过陈家村时,听到大神们在讨论一些排序算法,比如猴子排序法、睡眠排序法等,猴子排序法就是给猴子一堆乱序的数,
让它自己玩,最后总有一个顺序是对的!睡眠排序法,按数的大小分配线程睡眠时间,数越大睡眠时间就越长,然后同时启动全部线程,按
先后输出排序即成!想想也不无道理,那我就展开说说睡眠排序法,如何玩转线程执行顺序控制。
准备:
Idea2019.03/Gradle6.0.1/JDK11.0.4
难度: 新手--战士--老兵--大师
目标:
步骤:
为了遇见各种问题,同时保持时效性,我尽量使用最新的软件版本。代码地址:本次无
第一招:线程配合join
publicclass ThreadJoinDemo { public static void main(String[] args) { final Thread thread1 = new Thread( ()->{ System.out.println("先买菜"); } ); final Thread thread2 = new Thread( ()->{ try { thread1.join(); //Waits for this thread to die. } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("再煎蛋"); } ); final Thread thread3 = new Thread( ()->{ try { thread2.join(); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("后吃饭"); } ); thread3.start(); thread1.start(); thread2.start(); } }