gpt4 book ai didi

java - newScheduledThreadPool() 方法的参数 "corePoolSize"是什么意思?

转载 作者:搜寻专家 更新时间:2023-11-01 02:05:44 41 4
gpt4 key购买 nike

我不清楚类 java.util.concurrent.Executors 中 newScheduledThreadPool() 方法的“corePoolSize”参数是什么意思。

如果我输入较高的数值会怎样,如果我输入较低的数值会怎样?

// corePoolSize = 1;
java.util.concurrent.Executors.newScheduledThreadPool(corePoolSize);

// corePoolSize = 5;
java.util.concurrent.Executors.newScheduledThreadPool(corePoolSize);

定义该值的正确方法是什么?

最佳答案

ThreadPoolExecutor的javadoc中有详细解释- 摘录:

When a new task is submitted in method execute(Runnable), and fewer than corePoolSize threads are running, a new thread is created to handle the request, even if other worker threads are idle. If there are more than corePoolSize but less than maximumPoolSize threads running, a new thread will be created only if the queue is full.

因此它定义了是否应该根据执行者的状态创建线程。

对于 ScheduledExecutorService,如果您不打算在给定时间运行多个任务,则 corePoolSize 为 1 可能效率更高.如果需要,它不会阻止创建更多线程。

关于java - newScheduledThreadPool() 方法的参数 "corePoolSize"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34273365/

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