Метод getQueue() обеспечивает доступ к базовой очереди блокировки в ThreadPoolExecutor, но это не кажется безопасным.
Обход очереди, возвращаемой этой функцией, может пропустить обновления, внесенные в очередь ThreadPoolExecutor.
«Метод getQueue() позволяет получить доступ к рабочей очереди в целях мониторинга и отладки. Использование этого метода для любых других целей настоятельно не рекомендуется».
Что бы вы сделали, если бы захотели пройти через workQueue, используемую ThreadPoolExecutor? Или есть альтернативный подход?
Это продолжение... Выбор данных структура варианта задачи производителя-потребителя
Теперь я пробую несколько потребителей с несколькими производителями, но я хочу использовать какой-то существующий пул потоков, так как я не хочу сам управлять пулом потоков, а также мне нужен обратный вызов, когда ThreadPoolExecutor завершил выполнение некоторой задачи вместе с возможностью проверки потокобезопасным способом структуру данных "незавершенных транзакций".