Spec-Zone .ru
спецификации, руководства, описания, API
|
V
- Тип результата возвратился этим FutureTask get
методыpublic class FutureTask<V> extends Object implements RunnableFuture<V>
Future
, с методами, чтобы запуститься и отменить вычисление, запрос, чтобы видеть, полно ли вычисление, и получает результат вычисления. Результат может только быть получен, когда вычисление завершилось; get
методы блокируют, если вычисление еще не завершилось. Как только вычисление завершилось, вычисление не может быть перезапущено или отменено (если вычисление не вызывается, используя runAndReset()
). A FutureTask
может использоваться, чтобы обернуть a Callable
или Runnable
объект. Поскольку FutureTask
реализации Runnable
, a FutureTask
может быть представлен Executor
для выполнения.
В дополнение к служению в качестве автономного class обеспечивает этот class protected
функциональность, которая может быть полезной когда создание настроенные классы задачи.
Конструктор и Описание |
---|
FutureTask(Callable<V> callable)
Создает a
FutureTask это, после выполнения, выполнит данный Callable . |
FutureTask(Runnable runnable, V result)
Создает a
FutureTask это, после выполнения, выполнит данный Runnable , и расположите это get возвратит данный результат на успешном завершении. |
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
cancel(boolean mayInterruptIfRunning)
Попытки отменить выполнение этой задачи.
|
protected void |
done()
Защищенный метод, вызванный, когда эта задача переходы, чтобы утвердить
isDone (или обычно или через отмену). |
V |
get()
Ожидает в случае необходимости вычисления, чтобы завершиться, и затем получает его результат.
|
V |
get(long timeout, TimeUnit unit)
Ожидает в случае необходимости в течение самое большее данного времени для вычисления, чтобы завершиться, и затем получает его результат, при наличии.
|
boolean |
isCancelled()
true возвратов, если эта задача была отменена прежде, чем это обычно завершалось.
|
boolean |
isDone()
true возвратов, если эта задача завершалась.
|
void |
run()
Наборы это Будущее к результату его вычисления, если это не было отменено.
|
protected boolean |
runAndReset()
Выполняет вычисление, не устанавливая его результат, и затем сбрасывает это будущее к начальному состоянию, будучи не в состоянии сделать так, если вычисление встречается с исключением или отменяется.
|
protected void |
set(V v)
Устанавливает результат этого будущего к данному значению, если это будущее не было уже установлено или было отменено.
|
protected void |
setException(Throwable t)
Причины это будущее, чтобы сообщить
ExecutionException с данным throwable как его причина, если это будущее не было уже установлено или было отменено. |
public FutureTask(Callable<V> callable)
FutureTask
это, после выполнения, выполнит данный Callable
.callable
- вызываемая задачаNullPointerException
- если вызываемым является нульpublic FutureTask(Runnable runnable, V result)
FutureTask
это, после выполнения, выполнит данный Runnable
, и расположите это get
возвратит данный результат на успешном завершении.runnable
- выполнимая задачаresult
- результат возвратиться на успешном завершении. Если Вы не нуждаетесь в определенном результате, рассмотрите использование конструкций формы: Future<?> f = new FutureTask<Void>(runnable, null)
NullPointerException
- если выполнимым является нульpublic boolean isCancelled()
Future
isCancelled
в интерфейсе Future<V>
public boolean isDone()
Future
public boolean cancel(boolean mayInterruptIfRunning)
Future
После этого метода возвраты, последующие звонки Future.isDone()
будет всегда возвращать true. Последующие звонки Future.isCancelled()
будет всегда возвращать true если этот метод возвращенный true.
cancel
в интерфейсе Future<V>
mayInterruptIfRunning
- true, если поток, выполняющий эту задачу, должен быть прерван; иначе, происходящим задачам позволяют завершитьсяpublic V get() throws InterruptedException, ExecutionException
Future
get
в интерфейсе Future<V>
CancellationException
- если вычисление было отмененоInterruptedException
- если текущий поток был прерван, ожидаяExecutionException
- если вычисление выдавало исключениеpublic V get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException
Future
get
в интерфейсе Future<V>
timeout
- максимальное время, чтобы ожидатьunit
- единица измерения времени параметра тайм-аутаCancellationException
- если вычисление было отмененоInterruptedException
- если текущий поток был прерван, ожидаяExecutionException
- если вычисление выдавало исключениеTimeoutException
- если ожидание синхронизированногоprotected void done()
isDone
(или обычно или через отмену). Реализация по умолчанию ничего не делает. Подклассы могут переопределить этот метод, чтобы вызвать обратные вызовы завершения или выполнить бухгалтерию. Отметьте, что можно запросить состояние в реализации этого метода, чтобы определить, была ли эта задача отменена.protected void set(V v)
Этот метод вызывается внутренне run()
метод после успешного завершения вычисления.
v
- значениеprotected void setException(Throwable t)
ExecutionException
с данным throwable как его причина, если это будущее не было уже установлено или было отменено. Этот метод вызывается внутренне run()
метод на отказ вычисления.
t
- причина отказаpublic void run()
RunnableFuture
run
в интерфейсе Runnable
run
в интерфейсе RunnableFuture<V>
Thread.run()
protected boolean runAndReset()
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92