Asynctask 未运行探究

      asyncTask核心是构建了一个线程池(基于android API 28),核心线程最小是2,最大是4或者CPU数量减1中更小的值。任务队列是一个容量为128的LinkedBlockingQueue,并且没有设置超过队列数时的应对措施,线程池的RejectedExecutionHandler(放入队列的任务大于任务数时的回调)是默认的defaultHandler,AbortPolicy。此时如果线程池达到最大线程数并且任务队列已满调用astncTask的execute会直接报任务队列已满的异常。

     另外如果之前的任务还没有执行完,并且任务队列没有满,只会开启核心线程池。此时如果之前的任务还在执行,可能会等待很长时间才会执行。

参考资料:

https://blog.csdn.net/smileiam/article/details/89225102

https://www.jianshu.com/p/ade771d2c9c0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值