我们在日常的多线程开发中,可能有时会想让每个线程都按照我们指定的顺序来运行,而不是让CPU随机调度,这样可能会让我们在日常的开发工作中带来不必要的麻烦。既然有了这个需求,也就引入了本文的标题,让线程按照自己指定的顺序来运行。
有兴趣的同学可以猜想下列代码可能运行的结果:
按照正常的理解思路,上面代码的执行顺序依次应该为:t1 → t2 → t3,而实际效果则不是理想的状态。
下图为运行效果:
(1)认识Join
join可能对于一些同学来说并不陌生,此处我就不详细介绍Join是什么了,有疑问的同学可以自行baidu和google。这里我将直接介绍如何使用join来达到我们希望看到的效果!