gpt4 book ai didi

java - 没有队列的 ThreadPoolExecutor

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:14:10 27 4
gpt4 key购买 nike

我想创建一个固定大小的线程池,不允许任何任务进入其队列。换句话说,如果线程池当前正在使用中,传入的任务应该被彻底拒绝。基于documentation ,在我看来,一种方法是创建一个拒绝接受任务的虚拟 Queue 对象。在 Java 中实现此目的的惯用方法是什么?

最佳答案

您可以使用 SynchronousQueue在您的 ThreadPoolExector 中,这是一个不包含任何对象的队列。缓存线程池使用它是因为它按需创建新线程。

如果无法排队,但我建议使用 RejectedExecutionHandler在当前线程中运行任务。这样它将始终“立即”运行。

顺便说一句:弄清楚为什么要这样做会很有用。

关于java - 没有队列的 ThreadPoolExecutor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10186397/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com