У меня есть пользовательский класс MyFutureTask extends FutureTask<Void>
, для которого я делаю некоторый код для метода done()
.
Я использую ExecutorService, в которую я вызываю submit(new MyFutureTask())
.
Теперь я могу сохранить ссылку на Future<?>
, который возвращается после того, как вы вызвали submit, но когда я вызываю отмену, метод isCancelled()
никогда не возвращает true.
Должен ли я игнорироватьFuture<?>
объект, который возвращается и вместо этого работает с MyFutureTask
и вместо этого вызывает cancel(true)
?
Какая польза от объекта Future<?>
тогда?
edit: В чем разница между Future и FutureTask в Java? из этого потока я понимаю разницу.
Помимо поведения отмены по умолчанию, я также хочу попытаться остановить текущий сетевой вызов, поэтому я предполагаю,маршрут, который я собираюсь использовать, является правильным.Кто-то может подтвердить?