线程池执行问题

来源:8-3 线程池-3

云端漫步2

2019-03-21

我用newCachedThreadPool(),newFixedThreadPool(3),newSingleThreadExecutor(),newScheduledThreadPool(3)。运行结果怎么都是顺序的呢?没有乱序呢

写回答

1回答

Jimin

2019-03-21

你好,你可以点开他们的实现,本质上都是调用new ThreadPoolExecutor实例化的,他们自己并不保证什么特性,只是源码实现者根据参数的特性定义了个名称而已,核心还是看ThreadPoolExecutor实例化时传入的参数。至于一直顺序执行,我猜想是你的例子太简单,执行起来太快,比如创建线程的代价已经远远大于线程执行的代价,例子变复杂,比如让执行变慢或者加入一些db、rpc等操作,效果肯定会不同的。

1
1
云端漫步2
非常感谢!
2019-03-21
共1条回复

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程