我是靠谱客的博主 顺心招牌,这篇文章主要介绍java executor 队列满后,任务的处理策略,现在分享给大家,希望可以做个参考。

 

如果队列满了,就需要 staturation policies 来处理装不下的 task。或者Executor已关闭,处理那些还没有执行的任务。 有各种策略:AbortPolicy, CallerRunsPolicy, DiscardPolicy, and DiscardOldestPolicy.

默认是abort policy,抛弃任务,并且抛出异常(abort ExecutionException)。discard policy是直接丢弃,不抛异常。 

caller run policy 就是让调用者的线程来运行任务。

设置 pool 的 size和 saturation 策略:

image

可以结合 semaphore 可以实现execute阻塞:

image

最后

以上就是顺心招牌最近收集整理的关于java executor 队列满后,任务的处理策略的全部内容,更多相关java内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(130)

评论列表共有 0 条评论

立即
投稿
返回
顶部