首页  >  文章  >  Java  >  java线程池有什么拒绝策略

java线程池有什么拒绝策略

WBOY
WBOY转载
2023-04-17 21:37:042649浏览

1、AbortPolicy:这种拒绝战略在拒绝任务时,直接提出RejectedExecutionexception类型的Runtimeeexception,觉任务被拒绝,可以根据业务逻辑重试或放弃提交

2、DiscardPolicy:新任务提交后被直接丢弃,没有任何通知,有一定的风险,有可能丢失数据。

3、DiscardOldestPolicy:新任务提交后,将丢弃生存时间最长的任务,同样也有丢失数据的风险。

4、CallerRunsPolicy:新任务提交后,该任务提交给提交任务的线程,即谁提交任务,谁负责任务。这样做主要有两点好处。

第一,新提交的任务不会被抛弃,不会造成业务损失。

第二,由于谁提交任务谁负责任务,提交任务的路线必须负责任务,执行任务需要时间,在此期间,提交任务的路线被占有,不提交新任务,任务提交速度变慢,相当于负面反馈。在此期间,线程池的线程也可以充分利用这个时间执行一部分任务,腾出一定的空间,相当于给线程池一定的缓冲期。

Java有哪些集合类

Java中的集合主要分为四类:

1、List列表:有序的,可重复的;

2、Queue队列:有序,可重复的;

3、Set集合:不可重复;

4、Map映射:无序,键唯一,值不唯一。

以上是java线程池有什么拒绝策略的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:yisu.com。如有侵权,请联系admin@php.cn删除