我有一组记录要处理,处理可以并行进行,所以我创建了一个ExecutorService(通过Executors#newCachedThreadPool())。单个记录的处理本身由可并行化的步骤组成,因此我想使用另一个ExecutorService。有没有一种简单的方法可以让这个新的使用相同的底层线程池?它甚至是可取的吗?谢谢。 最佳答案 回答您的问题:不,两个ExecutorService对象不能共享一个线程池。但是,您可以在对象之间共享一个ExecutorService,或者根据需要创建多个Executor,但不太推荐这样做。最佳解
为什么,哦,为什么java.util.concurrent不为其ExecutorService提供队列长度指标?最近我发现自己在做这样的事情:ExecutorServicequeue=Executors.newSingleThreadExecutor();AtomicIntegerqueueLength=newAtomicInteger();...publicvoidaddTaskToQueue(Runnablerunnable){if(queueLength.get()哪个工作正常,但是...我认为这确实应该作为ExecutorService的一部分来实现。从实际队列中携带一个分离的
为什么,哦,为什么java.util.concurrent不为其ExecutorService提供队列长度指标?最近我发现自己在做这样的事情:ExecutorServicequeue=Executors.newSingleThreadExecutor();AtomicIntegerqueueLength=newAtomicInteger();...publicvoidaddTaskToQueue(Runnablerunnable){if(queueLength.get()哪个工作正常,但是...我认为这确实应该作为ExecutorService的一部分来实现。从实际队列中携带一个分离的