当A.jar程序在8core服务器上运行时,
ThreadPoolExecutor可以是除外 关于运行A.jar主线程的CPU核心?
还是存在其他出路?
答案 0 :(得分:0)
您可以确定执行程序在构造期间将使用多少个核心,因此,如果您因任何原因需要限制执行程序,只需在构造期间传递一个值。您想要做的是限制最大和核心池大小,在您的情况下,您可能希望将它们设置为相同的值,让我们说四个,在任何给定时间只使用四个核心
你无法决定使用哪些核心,据我所知,这些核心在你的控制范围之外。
最常用的构造函数的签名是:
ThreadPoolExecutor(int corePoolSize,int maximumPoolSize,long keepAliveTime,TimeUnit unit,BlockingQueue workQueue)
有关详细信息,请参阅documentation。