getQueue() 方法提供了对 ThreadPoolExecutor 中底层阻塞队列的访问,但这似乎并不安全。
遍历此函数返回的队列可能会错过 ThreadPoolExecutor 对队列所做的更新。
“方法 getQueue() 允许访问工作队列以进行监视和调试。强烈建议不要将此方法用于任何其他目的。”
如果你想遍历 ThreadPoolExecutor 使用的 workQueue,你会怎么做?还是有替代方法?
这是……的延续。 为生产者消费者问题的变体选择数据结构
现在,我正在尝试多生产者多消费者,但我想使用一些现有的线程池,因为我不想自己管理线程池,而且我想要在 ThreadPoolExecutor 完成执行某些任务时回调以及检查的能力以线程安全的方式“进行中的事务”数据结构。