Spec-Zone.ru › OpenJavaFX 17

Класс Service<V>

java.lang.Object
javafx.concurrent.Service<V>
Параметры типа:
V - тип объекта, возвращаемого сервисом
Все реализованные интерфейсы:
Worker<V>, EventTarget
Прямые известные подклассы:
ScheduledService
public abstract class Service<V>
extends Object
implements Worker<V>, EventTarget

Сервис — это компонент, не связанный с визуальным представлением, который содержит информацию, необходимую для выполнения какой-либо работы в одном или нескольких фоновых потоках. Будучи частью библиотеки JavaFX UI, сервис знает о потоке JavaFX Application и призван освободить разработчика приложения от необходимости управления многопоточным кодом, взаимодействующим с пользовательским интерфейсом. Таким образом, все методы и состояние сервиса должны вызываться исключительно из потока JavaFX Application. Единственное исключение — это первоначальная настройка сервиса, которая может быть выполнена из любого потока, а также первоначальный запуск сервиса, который также может быть выполнен из любого потока. Однако после инициализации и запуска сервис может быть использован только из потока FX.

Сервис создаёт и управляет Task, который выполняет работу в фоновом потоке. Service реализует Worker. Благодаря этому вы можете наблюдать состояние фоновой задачи и, при необходимости, отменять её. Service — это многократно используемый рабочий элемент (Worker), что означает, что его можно сбросить и перезапустить. Из-за этого сервис можно конструировать декларативно и перезапускать по требованию. После запуска сервис запланирует свою задачу (Task) и будет следить за изменениями состояния задачи. Задача не содержит ссылки на сервис, который её запустил, что означает, что работающая задача не помешает сервису быть удалённым сборщиком мусора.

Если для сервиса указан Executor, то он будет использован для фактического выполнения сервиса. В противном случае будет создан и запущен демонический поток. Если вы хотите создать потоки, не являющиеся демоническими, укажите пользовательский Executor (например, вы можете использовать ThreadPoolExecutor с пользовательской ThreadFactory).

Поскольку сервис предназначен для упрощения декларативных случаев использования, подклассы должны предоставлять в качестве свойств входные параметры для выполняемой работы. Например, предположим, что я хочу написать сервис, который считывает первую строку из любого URL-адреса и возвращает её в качестве строки. Такой сервис можно определить таким образом, что у него будет только одно свойство, url. Он может быть реализован следующим образом:


     public static class FirstLineService extends Service<String> {
         private StringProperty url = new SimpleStringProperty(this, "url");
         public final void setUrl(String value) { url.set(value); }
         public final String getUrl() { return url.get(); }
         public final StringProperty urlProperty() { return url; }

         protected Task createTask() {
             final String _url = getUrl();
             return new Task<String>() {
                 protected String call() throws Exception {
                     URL u = new URL(_url);
                     BufferedReader in = new BufferedReader(
                             new InputStreamReader(u.openStream()));
                     String result = in.readLine();
                     in.close();
                     return result;
                 }
             };
         }
     }
     

Сервис по умолчанию использует пул потоков Executor с некоторым неопределённым значениями размера или максимальной ёмкостью пула потоков. Это делается для того, чтобы код начинающего уровня не перегружал систему созданием тысяч потоков.

С момента:
JavaFX 2.0

Краткое описание свойств

Свойства
Тип Свойство Описание
ObjectProperty<Executor> executor
Executor, используемый для запуска этого сервиса.
ObjectProperty<EventHandler<WorkerStateEvent>> onCancelled
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи Task переходит в состояние CANCELLED.
ObjectProperty<EventHandler<WorkerStateEvent>> onFailed
Обработчик события onFailed вызывается всякий раз, когда состояние задачи Task переходит в состояние FAILED.
ObjectProperty<EventHandler<WorkerStateEvent>> onReady
Обработчик события onReady вызывается всякий раз, когда состояние задачи Task переходит в состояние READY.
ObjectProperty<EventHandler<WorkerStateEvent>> onRunning
Обработчик события onRunning вызывается всякий раз, когда состояние задачи Task переходит в состояние RUNNING.
ObjectProperty<EventHandler<WorkerStateEvent>> onScheduled
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи Task переходит в состояние SCHEDULED.
ObjectProperty<EventHandler<WorkerStateEvent>> onSucceeded
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи Task переходит в состояние SUCCEEDED.

Свойства, объявленные в интерфейсе javafx.concurrent.Worker

exception, message, progress, running, state, title, totalWork, value, workDone

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в интерфейсе javafx.concurrent.Worker

Worker.State

Краткое описание конструкторов

Конструкторы
Модификатор Конструктор Описание
protected Service()
Создаёт новый сервис.

Краткое описание методов

Модификатор и тип Метод Описание
<T extends Event>
void
addEventFilter​(EventType<T> eventType, EventHandler<? super T> eventFilter)
Регистрирует фильтр событий для этой задачи.
<T extends Event>
void
addEventHandler​(EventType<T> eventType, EventHandler<? super T> eventHandler)
Регистрирует обработчик событий для этой задачи.
boolean cancel()
Отменяет любую текущую выполняющуюся задачу, если таковая имеется.
protected void cancelled()
Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние CANCELLED.
protected abstract Task<V> createTask()
Вызывается после запуска службы в потоке приложения JavaFX.
protected void executeTask​(Task<V> task)
Использует executor, определённый в этой службе, для выполнения заданной задачи.
ObjectProperty<Executor> executorProperty()
Исполнитель, используемый для запуска этой службы.
protected void failed()
Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние FAILED.
protected void fireEvent​(Event event)
Вызывает указанное событие.
Executor getExecutor()
Получает значение свойства executor.
EventHandler<WorkerStateEvent> getOnCancelled()
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в состояние CANCELLED.
EventHandler<WorkerStateEvent> getOnFailed()
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в состояние FAILED.
EventHandler<WorkerStateEvent> getOnReady()
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
EventHandler<WorkerStateEvent> getOnRunning()
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
EventHandler<WorkerStateEvent> getOnScheduled()
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
EventHandler<WorkerStateEvent> getOnSucceeded()
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
ObjectProperty<EventHandler<WorkerStateEvent>> onCancelledProperty()
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в состояние CANCELLED.
ObjectProperty<EventHandler<WorkerStateEvent>> onFailedProperty()
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в состояние FAILED.
ObjectProperty<EventHandler<WorkerStateEvent>> onReadyProperty()
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
ObjectProperty<EventHandler<WorkerStateEvent>> onRunningProperty()
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
ObjectProperty<EventHandler<WorkerStateEvent>> onScheduledProperty()
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
ObjectProperty<EventHandler<WorkerStateEvent>> onSucceededProperty()
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
protected void removeEventFilter​(EventType<T> eventType, EventHandler<? super T> eventFilter)
Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние READY.
<T extends Event>
void
removeEventFilter​(EventType<T> eventType, EventHandler<? super T> eventFilter)
Отменяет регистрацию ранее зарегистрированного фильтра событий из этой задачи.
<T extends Event>
void
removeEventHandler​(EventType<T> eventType, EventHandler<? super T> eventHandler)
Отменяет регистрацию ранее зарегистрированного обработчика событий из этой задачи.
void reset()
Сбрасывает состояние службы.
void restart()
Отменяет любую текущую выполняющуюся задачу, если таковая имеется, и перезапускает эту службу.
protected void running()
Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние RUNNING.
protected void scheduled()
Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние SCHEDULED.
protected <T extends Event>
void
setEventHandler​(EventType<T> eventType, EventHandler<? super T> eventHandler)
Устанавливает обработчик для этого типа события.
void setExecutor​(Executor value)
Устанавливает значение свойства executor.
void setOnCancelled​(EventHandler<WorkerStateEvent> value)
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в состояние CANCELLED.
void setOnFailed​(EventHandler<WorkerStateEvent> value)
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в состояние FAILED.
void setOnReady​(EventHandler<WorkerStateEvent> value)
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
void setOnRunning​(EventHandler<WorkerStateEvent> value)
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
void setOnScheduled​(EventHandler<WorkerStateEvent> value)
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
void setOnSucceeded​(EventHandler<WorkerStateEvent> value)
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
void start()
Запускает эту службу.
protected void succeeded()
Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние SUCCEEDED.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы, объявленные в интерфейсе javafx.event.EventTarget

buildEventDispatchChain

Методы, объявленные в интерфейсе javafx.concurrent.Worker

exceptionProperty, getException, getMessage, getProgress, getState, getTitle, getTotalWork, getValue, getWorkDone, isRunning, messageProperty, progressProperty, runningProperty, stateProperty, titleProperty, totalWorkProperty, valueProperty, workDoneProperty

Подробности свойства

executor

public final ObjectProperty<Executor> executorProperty
Исполнитель, используемый для выполнения этого сервиса. Если исполнитель не указан, то для выполнения сервиса будет создан и использован новый демонический поток с помощью некоторого исполнителя по умолчанию.
См. также:
getExecutor(), setExecutor(Executor)

onReady

public final ObjectProperty<EventHandler<WorkerStateEvent>> onReadyProperty
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
С:
JavaFX 2.1
См. также:
getOnReady(), setOnReady(EventHandler)

onScheduled

public final ObjectProperty<EventHandler<WorkerStateEvent>> onScheduledProperty
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
С:
JavaFX 2.1
См. также:
getOnScheduled(), setOnScheduled(EventHandler)

onRunning

public final ObjectProperty<EventHandler<WorkerStateEvent>> onRunningProperty
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
С:
JavaFX 2.1
См. также:
getOnRunning(), setOnRunning(EventHandler)

onSucceeded

public final ObjectProperty<EventHandler<WorkerStateEvent>> onSucceededProperty
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
С:
JavaFX 2.1
См. также:
getOnSucceeded(), setOnSucceeded(EventHandler)

onCancelled

public final ObjectProperty<EventHandler<WorkerStateEvent>> onCancelledProperty
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в состояние CANCELLED.
С:
JavaFX 2.1
См. также:
getOnCancelled(), setOnCancelled(EventHandler)

onFailed

public final ObjectProperty<EventHandler<WorkerStateEvent>> onFailedProperty
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в состояние FAILED.
С:
JavaFX 2.1
См. также:
getOnFailed(), setOnFailed(EventHandler)

Подробности конструктора

Service

protected Service()
Создать новый сервис.

Подробности метода

setExecutor

public final void setExecutor(Executor value)
Устанавливает значение свойства executor.
Описание свойства:
Исполнитель, используемый для выполнения этого сервиса. Если исполнитель не указан, то для выполнения сервиса будет создан и использован новый демонический поток с помощью некоторого исполнителя по умолчанию.

getExecutor

public final Executor getExecutor()
Получает значение свойства executor.
Описание свойства:
Исполнитель, используемый для выполнения этого сервиса. Если исполнитель не указан, то для выполнения сервиса будет создан и использован новый демонический поток с помощью некоторого исполнителя по умолчанию.

executorProperty

public final ObjectProperty<Executor> executorProperty()
Исполнитель, используемый для выполнения этого сервиса. Если исполнитель не указан, то для выполнения сервиса будет создан и использован новый демонический поток с помощью некоторого исполнителя по умолчанию.
См. также:
getExecutor(), setExecutor(Executor)

onReadyProperty

public final ObjectProperty<EventHandler<WorkerStateEvent>> onReadyProperty()
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
С:
JavaFX 2.1
См. также:
getOnReady(), setOnReady(EventHandler)

getOnReady

public final EventHandler<WorkerStateEvent> getOnReady()
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
Возвращает:
обработчик события onReady, если он есть
С:
JavaFX 2.1

setOnReady

public final void setOnReady(EventHandler<WorkerStateEvent> value)
Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
Параметры:
value - обработчик события, может быть null для его очистки
С:
JavaFX 2.1

ready

protected void ready()
Защищенный вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние READY. Этот метод вызывается после того, как служба была полностью переведена в новое состояние.
С:
JavaFX 2.1

onScheduledProperty

public final ObjectProperty<EventHandler<WorkerStateEvent>> onScheduledProperty()
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
С:
JavaFX 2.1
См. также:
getOnScheduled(), setOnScheduled(EventHandler)

getOnScheduled

public final EventHandler<WorkerStateEvent> getOnScheduled()
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
Возвращает:
обработчик события onScheduled, если он есть
С:
JavaFX 2.1

setOnScheduled

public final void setOnScheduled(EventHandler<WorkerStateEvent> value)
Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
Параметры:
value - обработчик события, может быть null для его очистки
С:
JavaFX 2.1

scheduled

protected void scheduled()
Защищенный вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние SCHEDULED. Этот метод вызывается после того, как служба была полностью переведена в новое состояние.
С:
JavaFX 2.1

onRunningProperty

public final ObjectProperty<EventHandler<WorkerStateEvent>> onRunningProperty()
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
С:
JavaFX 2.1
См. также:
getOnRunning(), setOnRunning(EventHandler)

getOnRunning

public final EventHandler<WorkerStateEvent> getOnRunning()
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
Возвращает:
обработчик события onRunning, если он есть
С:
JavaFX 2.1

setOnRunning

public final void setOnRunning(EventHandler<WorkerStateEvent> value)
Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
Параметры:
value - обработчик события, может быть null для его очистки
С:
JavaFX 2.1

running

protected void running()
Защищенный вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние RUNNING. Этот метод вызывается после того, как служба была полностью переведена в новое состояние.
С:
JavaFX 2.1

onSucceededProperty

public final ObjectProperty<EventHandler<WorkerStateEvent>> onSucceededProperty()
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
С:
JavaFX 2.1
См. также:
getOnSucceeded(), setOnSucceeded(EventHandler)

getOnSucceeded

public final EventHandler<WorkerStateEvent> getOnSucceeded()
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
Возвращает:
обработчик события onSucceeded, если он есть
С:
JavaFX 2.1

setOnSucceeded

public final void setOnSucceeded(EventHandler<WorkerStateEvent> value)
Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
Параметры:
value - обработчик события, может быть null для его очистки
С:
JavaFX 2.1

succeeded

protected void succeeded()
Защищенный вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние SUCCEEDED. Этот метод вызывается после того, как служба была полностью переведена в новое состояние.
С:
JavaFX 2.1

Обработчик onCancelled

public final ObjectProperty<EventHandler<WorkerStateEvent>> onCancelledProperty()
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в CANCELLED.
С момента:
JavaFX 2.1
См. также:
getOnCancelled(), setOnCancelled(EventHandler)

getOnCancelled

public final EventHandler<WorkerStateEvent> getOnCancelled()
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в CANCELLED.
Возвращает:
обработчик события onCancelled, если таковой существует
С момента:
JavaFX 2.1

setOnCancelled

public final void setOnCancelled(EventHandler<WorkerStateEvent> value)
Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в CANCELLED.
Параметры:
value - обработчик событий, может быть null для его удаления
С момента:
JavaFX 2.1

cancelled

protected void cancelled()
Защищенный вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние сервиса переходит в состояние CANCELLED. Этот метод вызывается после того, как сервис полностью перешел в новое состояние.
С момента:
JavaFX 2.1

Обработчик onFailed

public final ObjectProperty<EventHandler<WorkerStateEvent>> onFailedProperty()
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в FAILED.
С момента:
JavaFX 2.1
См. также:
getOnFailed(), setOnFailed(EventHandler)

getOnFailed

public final EventHandler<WorkerStateEvent> getOnFailed()
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в FAILED.
Возвращает:
обработчик события onFailed, если таковой существует
С момента:
JavaFX 2.1

setOnFailed

public final void setOnFailed(EventHandler<WorkerStateEvent> value)
Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в FAILED.
Параметры:
value - обработчик событий, может быть null для его удаления
С момента:
JavaFX 2.1

failed

protected void failed()
Защищенный вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние сервиса переходит в состояние FAILED. Этот метод вызывается после того, как сервис полностью перешел в новое состояние.
С момента:
JavaFX 2.1

cancel

public boolean cancel()
Отменяет любую текущую выполняющуюся задачу, если таковая имеется. Состояние будет установлено в CANCELLED.
Определено в:
cancel в интерфейсе Worker<V>
Возвращает:
возвращает true, если отмена была успешной

restart

public void restart()
Отменяет любую текущую выполняющуюся задачу, если таковая имеется, и перезапускает этот сервис. Состояние будет сброшено в READY перед выполнением. Этот метод должен вызываться только в потоке приложения FX.

reset

public void reset()
Сбрасывает сервис. Может быть вызван только в одном из состояний завершения, то есть SUCCEEDED, FAILED или CANCELLED, или когда READY. Этот метод должен вызываться только в потоке приложения FX.

start

public void start()
Запускает этот сервис. Сервис должен быть в состоянии READY, чтобы это вызов был успешным. Этот метод должен вызываться только в потоке приложения FX.

executeTask

protected void executeTask(Task<V> task)

Использует executor, определенный в этом сервисе, для выполнения заданной задачи. Если executor равно null, используется дефолтный исполняющий механизм, который создаст новый демонический поток для выполнения этой задачи.

Этот метод предназначен только для вызова реализацией сервиса.

Параметры:
task - непустая задача для выполнения
С момента:
JavaFX 2.1

addEventHandler

public final <T extends Event> void addEventHandler(EventType<T> eventType, EventHandler<? super T> eventHandler)
Регистрирует обработчик событий для этой задачи. Любые фильтры событий обрабатываются сначала, затем указанные обработчики onFoo, а затем любые обработчики, зарегистрированные этим методом. Как и с другими событиями в графическом дереве сцены, если событие обрабатывается, оно больше не будет распространяться.
Параметры типа:
T - конкретный класс события обработчика
Параметры:
eventType - тип событий, принимаемых обработчиком
eventHandler - обработчик для регистрации
Исключения:
NullPointerException - если тип события или обработчик равен null
С момента:
JavaFX 2.1

removeEventHandler

public final <T extends Event> void removeEventHandler(EventType<T> eventType, EventHandler<? super T> eventHandler)
Удаляет ранее зарегистрированный обработчик событий из этой задачи. Один обработчик может быть зарегистрирован для разных типов событий, поэтому вызывающий метод должен указать конкретный тип события, из которого нужно удалить обработчик.
Параметры типа:
T - конкретный класс события обработчика
Параметры:
eventType - тип события, из которого нужно удалить обработчик
eventHandler - обработчик для удаления
Исключения:
NullPointerException - если тип события или обработчик равен null
С момента:
JavaFX 2.1

addEventFilter

public final <T extends Event> void addEventFilter(EventType<T> eventType, EventHandler<? super T> eventFilter)
Регистрирует фильтр событий для этой задачи. Зарегистрированные фильтры событий получают событие до любых связанных обработчиков событий.
Параметры типа:
T - конкретный класс события фильтра
Параметры:
eventType - тип событий, принимаемых фильтром
eventFilter - фильтр для регистрации
Исключения:
NullPointerException - если тип события или фильтр равен null
С момента:
JavaFX 2.1

removeEventFilter

public final <T extends Event> void removeEventFilter(EventType<T> eventType, EventHandler<? super T> eventFilter)
Удаляет ранее зарегистрированный фильтр событий из этой задачи. Один фильтр может быть зарегистрирован для разных типов событий, поэтому вызывающий метод должен указать конкретный тип события, из которого нужно удалить фильтр.
Параметры типа:
T - конкретный класс события фильтра
Параметры:
eventType - тип события, из которого нужно удалить фильтр
eventFilter - фильтр для удаления
Исключения:
NullPointerException - если тип события или фильтр равен null
С момента:
JavaFX 2.1

setEventHandler

protected final <T extends Event> void setEventHandler(EventType<T> eventType, EventHandler<? super T> eventHandler)
Устанавливает обработчик для этого типа событий. Одновременно может быть указан только один такой обработчик. Этот обработчик гарантированно будет вызван первым. Используется для регистрации пользовательских обработчиков onFoo.
Параметры типа:
T - конкретный класс события обработчика
Параметры:
eventType - тип события, который нужно связать с данным обработчиком
eventHandler - обработчик для регистрации или null для отмены регистрации
Исключения:
NullPointerException - если тип события равен null
С момента:
JavaFX 2.1

fireEvent

protected final void fireEvent(Event event)
Вызывает указанное событие. Любой встреченный фильтр событий будет уведомлен и может обработать событие. Если оно не обрабатывается фильтрами, события уведомляются обработчики на этой задаче. Если они также не обработают событие, вызываются все обработчики событий, и они могут обработать событие.

Этот метод должен вызываться в потоке FX.

Параметры:
event - событие для вызова
С момента:
JavaFX 2.1

createTask

protected abstract Task<V> createTask()
Вызывается после запуска сервиса в потоке JavaFX Application Thread. Реализации должны сохранять любое состояние в конечных переменных до создания задачи, поскольку доступ к свойствам, определенным в сервисе, внутри кода задачи в фоновом потоке приведет к исключениям. Например:

     protected Task createTask() {
         final String url = myService.getUrl();
         return new Task<String>() {
             protected String call() {
                 URL u = new URL("http://www.oracle.com");
                 BufferedReader in = new BufferedReader(
                         new InputStreamReader(u.openStream()));
                 String result = in.readLine();
                 in.close();
                 return result;
             }
         }
     }
 

Если задача является предопределенным классом (а не анонимным классом), и если она соответствует рекомендуемой лучшей практике, то нет необходимости сохранять состояние перед созданием задачи, поскольку ее состояние полностью предоставляется в ее конструкторе.


     protected Task createTask() {
         // This is safe because getUrl is called on the FX Application
         // Thread and the FirstLineReaderTasks stores it as an
         // immutable property
         return new FirstLineReaderTask(myService.getUrl());
     }
 
Возвращает:
задачу для выполнения

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API