龙空技术网

年后面试必会基础,如何控制多线程执行顺序?

Java识堂 522

前言:

此时大家对“java实现多线程步骤”大体比较讲究,朋友们都想要分析一些“java实现多线程步骤”的相关资讯。那么小编也在网上收集了一些关于“java实现多线程步骤””的相关知识,希望同学们能喜欢,兄弟们一起来了解一下吧!

介绍

先看如下代码:

重复执行多次,发现输出并不是按照线程的启动顺序来执行。因为这个里面涉及到CPU对线程的调度问题。

thread1thread3thread2

如何让thread1,thread2,thread3顺序执行呢?

方法1

通过join方法去保证多线程顺序执行

可以看到输出一直是如下

thread1thread2thread3

join是怎么实现这个功能的呢?

join方法让主线程等待子线程结束以后才能继续运行,因此保证了线程的顺序执行

方法2

使用单例线程池,用唯一的工作线程执行任务,保证所有任务按照指定顺序执行

ExecutorService executorService = Executors.newSingleThreadExecutor();

这个会把线程放在一个FIFO队列,依次执行线程

输出一直为

thread1thread2thread3

目的达到

推荐阅读

年后面试必会基础,try catch finally块中return的执行顺序

最近有人私信小编有没有面试视频,然后就总结了一波,基本涉及到了所有的面试题

如何获取呢?

转发后加群,681299970,备注 头条 即可

标签: #java实现多线程步骤 #java多个方法执行顺序 #java多个方法执行顺序怎么设置 #java多个方法执行顺序怎么设置的