gpt4 book ai didi

spring - Spring批处理多线程: throttle-limit impact

转载 作者:行者123 更新时间:2023-12-03 13:19:12 26 4
gpt4 key购买 nike

我有一个多线程Step,配置了一个带有48个线程corePoolSize的线程池(这是一台大机器),但是我没有配置节流限制

我想知道是否因为这个原因一直在使用机器。

Spring Batch文档说节流限制是一次可以运行的最大并发任务数,的默认值为4

我可以在 jconsole 中看到,实际上创建了48个线程,它们似乎正在执行(我也可以在日志中看到)。

但是,即使我可以看到创建了48个线程,但是节流限制为4 是否意味着这48个线程中只有4个确实在同时执行工作?

先感谢您。

最佳答案

是的,您的理解是正确的,即只有等于 throttle 极限的线程才能同时工作。

在您的情况下,由于它是一个线程池,因此可以随机选择任何四个线程来执行工作,其余线程将保持空闲,但是由于线程轮流执行这四个任务,因此会给人一种印象,即所有线程都在执行工作同时。

corePoolSize 只是表示作业运行期间要启动和维护的线程数,但这并不意味着所有线程都在同时运行,这意味着您要在作业运行期间避免线程创建等开销。

您尚未共享任何代码或工作结构,因此很难指出更多细节。

希望能帮助到你 !!

关于spring - Spring批处理多线程: throttle-limit impact,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41871647/

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