java中的线程池

线程池的好处

  • 降低资源消耗
  • 提高响应速度
  • 提高线程的可管理性

向线程池提交一个任务

如果没有空闲线程(并且核心线程池没有满),那么将会创建一个核心线程,如果核心线程满了,任务会加入阻塞队列,如果阻塞队列满了,会使用拒绝策略。
一旦线程在 ThreadPoolExecutor 中被创建出来,它会从阻塞队列中获取任务并执行。

参数

核心线程数

阻塞队列

线程最大数量

饱和拒绝策略

java中的线程池基于Executor框架:使用线程来异步执行任务

在HotSpot的线程模型中,java线程被一对一映射为本地操作系统线程。当线程终止时,操作系统线程会被回收。

ThreadPoolExecutor

ThreadPoolExecutor threadPoolExecutor=new ThreadPoolExecutor(2,5,1000, TimeUnit.MICROSECONDS,new ArrayBlockingQueue<>(100));

Executors创建特定的ThreadPoolExecutor

ScheduledThreadPoolExecutor
ThreadPoolExecutor threadPoolExecutor1=new ScheduledThreadPoolExecutor(1);
    ExecutorService th2=Executors.newScheduledThreadPool(1);
FixThreadPool
SingleThreadExecutor
CachedThreadPool
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值