本文收集整理关于如何保证线程顺序执行的相关议题,使用内容导航快速到达。
内容导航:
Q1:多线程中如何保证程序的执行顺序
thread类是被继承的,执行的时候调用的是继承它的子类,但java一般实现多线程不是继承thread类,而是实现runnable接口,因为java不能多重继承,所以继承thread类后就不能继承别的类了。
只要实现runnable接口(或继承了thread类)就可以实现多线程。
比如说有a b c d e五个类都实现runnable接口(或继承了thread类)
你先进了main方法,就创建了一个线程,这个线程是main方法的
你调用a的run()方法,就又创建一个线程,这个线程是a方法的。
如果还不懂得话建议你去看看什么叫继承和接口,基础差的话理解起来有点困难
这个问题用同步门闩应该可以解决,我们看一下定义:
CountDownLatch是jdk1.5之后引入的一个同步器应用类,它的作用能够使一个线程一直等待直到其他线程完成任务后再继续执行。CountDownLatch通常也被叫做门闩,意思是它会导致一条或多条线程一直在门口等待,直到一条线程打开这个门,其他线程才得以继续执行这是jdk1.5新增加的功能,另外使用同步屏障应该也能解决。
我在头条上写了系列学习java并发的文章,里面有演示代码,关注我就可以看到了。
再次感谢邀请!
Q3:如何让线程池里面的线程按照顺序执行
如何让线程池里面的线程按照顺序执行
用ThreadPoolExecutor,其中BlockQueue使用LinkedBlockingQueue(此队列按 FIFO(先进先出)排序元素)。
Q4:java 多线程_如何顺序执行多个线程
Java多线程设计 中国铁道出版社
楼主搜搜看,讲的就是关于Java多线程方面的,很详细。