Требуйте FutureTask, чтобы запустить до отмены
-
09-10-2019 - |
Вопрос
В своем вызовом коде я использую сигнализацию, чтобы уведомить несколько поведений по окончании окончания в другом потоке. Образуемые объекты в очереди с FutureTasks у исполнителя. Они также могут быть отменены после очереди.
Теперь моя проблема заключается в том, что я полагаюсь на запуска, по крайней мере, задачи, когда моя сигнализация на работу, но похоже, что исполнитель просто пропускает задачу, если она была отмечена как отменена, прежде чем у него появится шанс запустить его.
Итак, есть ли способ, чтобы Garantee всегда начинается и всегда отменяется (по прерыванию) во время работы.
Кроме того, можете ли вы проверить, не началась ли задача, но не удалась?
Решение
Вы, вероятно, можете подключить класс FutureTask и переопределить его Выполнено() Метод для выполнения сигнализации. Согласно документации, этот метод следует вызвать, даже если задача была отменена.