如何控制线程的执行顺序
2018-03-07 20:53
295 查看
控制线程的执行顺序有两种办法,通常来说,最简单的就算用Thread类提供的API,使用join方法即可。其使用方法及原理:深入理解join方法的底层原理
还有一个方法就是使用:ExecutorService 这个类提供的方法,看伪码:
这是jdk1.5以后concurrent包提供的一个API。
意思是,创建只有一个线程的线程池来操作一个不限数量的队列。
这个队列的特点是first in first out。
所以先将 thread1 仍进去 就是thread1先出来。
大概原理就这些了
还有一个方法就是使用:ExecutorService 这个类提供的方法,看伪码:
static ExecutorService executorService = Executors.newSingleThreadExecutor(); main(){ executorService .submit(thread1); executorService .submit(thread2); executorService .submit(thread3); }
这是jdk1.5以后concurrent包提供的一个API。
意思是,创建只有一个线程的线程池来操作一个不限数量的队列。
这个队列的特点是first in first out。
所以先将 thread1 仍进去 就是thread1先出来。
大概原理就这些了
相关文章推荐
- 如何控制线程执行的顺序?
- 如何控制线程执行的先后顺序
- java中控制线程间执行顺序的方法
- [原创]Enterprise Library Policy Injection Application Block 之四:如何控制CallHandler的执行顺序
- 有三个线程T1 T2 T3,如何保证他们按顺序执行
- js 异步操作回调函数如何控制执行顺序
- java中线程执行顺序控制
- java 中线程执行顺序控制
- java 中线程执行顺序控制
- Enterprise Library Policy Injection Application Block 之四:如何控制CallHandler的执行顺序
- [转]Java 如何同步顺序执行多个线程
- 有三个线程T1 T2 T3,如何保证他们按顺序执行
- 有三个线程T1 T2 T3,如何保证他们按顺序执行
- ABC线程如何保证顺序执行 关于多线程的一个小例子
- CountDownLatch--控制三个线程执行顺序(三)
- 控制线程顺序执行
- js 异步操作回调函数如何控制执行顺序
- 【Windows8开发】异步编程进阶篇之 单线程套间(STA)及如何控制task执行上下文
- Java--线程的先后执行顺序控制
- Java多线程系列四——控制线程执行顺序