线程池任务太多如何拒绝

Posted cnxieyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程池任务太多如何拒绝相关的知识,希望对你有一定的参考价值。

本文重点讲解当线程池的任务过多时,如何去拒绝这些任务。

拒绝条件

  1.线程已经shutdown了,需要拒绝

  2.最大线程数或者队列已经满了,需要拒绝

拒绝策略

  1.abortPolicy: 直接抛出异常

  2.discardPolicy:任务丢弃,收不到通知

  3.discardOldestPolicy:丢弃最老的

  4.callerRunsPolicy:调用者运行策略,让提交任务的线程去运行。

  备注:前三种会有任务丢失,第四种相当于是一种反馈策略。

以上是关于线程池任务太多如何拒绝的主要内容,如果未能解决你的问题,请参考以下文章

线程池

线程池的拒绝策略示例

java线程池原理

Spring Boot中如何配置线程池拒绝策略,妥善处理好溢出的任务

Spring Boot中如何配置线程池拒绝策略,妥善处理好溢出的任务

spring中的线程池