文章目录
1.什么是线程池?
2.为什么要使用线程池?
3.线程池有什么作用?
4.说说几种常见的线程池及使用场景
5.线程池中的几种重要的参数
6.java线程池的核心线程数与最大的线程数的区别?
7.说说线程池的拒绝策略
8.线程池的关闭
9.(了解)线程池都有哪几种工作队列
10.线程池创建
<!--引入commons-lang3,为了创建阿里线程池-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
//这里使用的是ThreadPoolExecutor的完整版构造函数
private static final ThreadPoolExecutor singlePool = new ThreadPoolExecutor(10,10,100, TimeUnit.SECONDS, new ArrayBlockingQueue<>(100),
new BasicThreadFactory.Builder().namingPattern("schedule-pool-%d").daemon(true).build()
,new ThreadPoolExecutor.CallerRunsPolicy());
//下面的代码就是直接执行异步调用的代码
@Test
public void testThread(){
singlePool.execute(new Runnable() {
@Override
public void run() {
System.out.println("index:1");
System.out.println(Thread.currentThread().getName() + ": run");
}
});
}
问题:ExecutorService和ThreadPoolExecutor联系?
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/106287.html