Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.graphics
Пакет javafx.concurrent

Класс 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, сервис знает о потоке приложения JavaFX и предназначен для освобождения разработчика приложения от необходимости управления многопоточным кодом, взаимодействующим с пользовательским интерфейсом. Таким образом, все методы и состояние сервиса предназначены для вызова исключительно из потока приложения JavaFX. Единственное исключение из этого правила — это первоначальная настройка сервиса, которую можно безопасно выполнять из любого потока, и начальный запуск сервиса, который также можно безопасно выполнять из любого потока. Однако после инициализации и запуска сервиса он может быть использован только из потока FX.

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

    Если для сервиса указан 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
  • Краткое описание свойств

    Свойства
    Тип Свойство Описание
    ReadOnlyObjectProperty<Throwable> exception
    Возвращает ReadOnlyObjectProperty, представляющий любую произошедшую ошибку.
    ObjectProperty<Executor> executor
    Executor для выполнения этого сервиса.
    ReadOnlyStringProperty message
    Возвращает ReadOnlyStringProperty, представляющий сообщение.
    ObjectProperty<EventHandler<WorkerStateEvent>> onCancelled
    Обработчик события onCancelled вызывается всякий раз, когда состояние задачи переходит в состояние CANCELLED.
    ObjectProperty<EventHandler<WorkerStateEvent>> onFailed
    Обработчик события onFailed вызывается всякий раз, когда состояние задачи переходит в состояние FAILED.
    ObjectProperty<EventHandler<WorkerStateEvent>> onReady
    Обработчик события onReady вызывается всякий раз, когда состояние задачи переходит в состояние READY.
    ObjectProperty<EventHandler<WorkerStateEvent>> onRunning
    Обработчик события onRunning вызывается всякий раз, когда состояние задачи переходит в состояние RUNNING.
    ObjectProperty<EventHandler<WorkerStateEvent>> onScheduled
    Обработчик события onSchedule вызывается всякий раз, когда состояние задачи переходит в состояние SCHEDULED.
    ObjectProperty<EventHandler<WorkerStateEvent>> onSucceeded
    Обработчик события onSucceeded вызывается всякий раз, когда состояние задачи переходит в состояние SUCCEEDED.
    ReadOnlyDoubleProperty progress
    Возвращает ReadOnlyDoubleProperty, представляющий прогресс.
    ReadOnlyBooleanProperty running
    Возвращает ReadOnlyBooleanProperty, представляющий, запущен ли рабочий элемент.
    ReadOnlyObjectProperty<Worker.State> state
    Возвращает ReadOnlyObjectProperty, представляющий текущее состояние.
    ReadOnlyStringProperty title
    Возвращает ReadOnlyStringProperty, представляющий заголовок.
    ReadOnlyDoubleProperty totalWork
    Возвращает ReadOnlyDoubleProperty, представляющий максимальное количество работы, которое нужно сделать.
    ReadOnlyObjectProperty<V> value
    Возвращает ReadOnlyObjectProperty, представляющий значение.
    ReadOnlyDoubleProperty workDone
    Возвращает ReadOnlyDoubleProperty, представляющий текущий прогресс.
  • Краткое описание вложенных классов

    • Вложенные классы/интерфейсы, унаследованные от интерфейса 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)
    Регистрирует обработчик событий для этой задачи.
    EventDispatchChain buildEventDispatchChain​(EventDispatchChain tail)
    Создаёт цепочку обработки событий для этой цели.
    boolean cancel()
    Отменяет любую текущую выполняющуюся задачу, если она есть.
    protected void cancelled()
    Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние CANCELLED.
    protected abstract Task<V> createTask()
    Вызывается после запуска службы в потоке JavaFX Application.
    ReadOnlyObjectProperty<Throwable> exceptionProperty()
    Получает ReadOnlyObjectProperty, представляющую любую произошедшую ошибку.
    protected void executeTask​(Task<V> task)
    Использует executor, определённый в этой службе, для выполнения заданной задачи.
    ObjectProperty<Executor> executorProperty()
    Исполнитель, который следует использовать для выполнения этой службы.
    protected void failed()
    Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние FAILED.
    protected void fireEvent​(Event event)
    Вызывает указанное событие.
    Throwable getException()
    Получает значение свойства exception.
    Executor getExecutor()
    Получает значение свойства executor.
    String getMessage()
    Получает значение свойства message.
    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.
    double getProgress()
    Получает значение свойства progress.
    Worker.State getState()
    Получает значение свойства state.
    String getTitle()
    Получает значение свойства title.
    double getTotalWork()
    Получает значение свойства totalWork.
    V getValue()
    Получает значение свойства value.
    double getWorkDone()
    Получает значение свойства workDone.
    boolean isRunning()
    Получает значение свойства running.
    ReadOnlyStringProperty messageProperty()
    Получает ReadOnlyStringProperty, представляющую сообщение.
    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.
    ReadOnlyDoubleProperty progressProperty()
    Получает ReadOnlyDoubleProperty, представляющую прогресс.
    protected void ready()
    Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние 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.
    ReadOnlyBooleanProperty runningProperty()
    Получает ReadOnlyBooleanProperty, представляющий, запущен ли Worker.
    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()
    Запускает эту службу.
    ReadOnlyObjectProperty<Worker.State> stateProperty()
    Получает ReadOnlyObjectProperty, представляющий текущее состояние.
    protected void succeeded()
    Защищённый вспомогательный метод для подклассов, вызываемый всякий раз, когда состояние службы переходит в состояние SUCCEEDED.
    ReadOnlyStringProperty titleProperty()
    Получает ReadOnlyStringProperty, представляющий заголовок.
    ReadOnlyDoubleProperty totalWorkProperty()
    Получает ReadOnlyDoubleProperty, представляющий максимальное количество работы, которое необходимо выполнить.
    ReadOnlyObjectProperty<V> valueProperty()
    Получает ReadOnlyObjectProperty, представляющий значение.
    ReadOnlyDoubleProperty workDoneProperty()
    Получает ReadOnlyDoubleProperty, представляющий текущий прогресс.
    • Методы, унаследованные от класса java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Подробное описание свойств

    • state

      public final ReadOnlyObjectProperty<Worker.State> stateProperty
      Определено:
      stateProperty в интерфейсе Worker<V>
      См. также:
      getState()
    • value

      public final ReadOnlyObjectProperty<V> valueProperty
      Определено:
      valueProperty в интерфейсе Worker<V>
      См. также:
      getValue()
    • exception

      public final ReadOnlyObjectProperty<Throwable> exceptionProperty
      Определено:
      exceptionProperty в интерфейсе Worker<V>
      См. также:
      getException()
    • workDone

      public final ReadOnlyDoubleProperty workDoneProperty
      Определено:
      workDoneProperty в интерфейсе Worker<V>
      См. также:
      getWorkDone()
    • totalWork

      public final ReadOnlyDoubleProperty totalWorkProperty
      Определено:
      totalWorkProperty в интерфейсе Worker<V>
      См. также:
      getTotalWork()
    • progress

      public final ReadOnlyDoubleProperty progressProperty
      Определено:
      progressProperty в интерфейсе Worker<V>
      См. также:
      getProgress()
    • running

      public final ReadOnlyBooleanProperty runningProperty
      Определено:
      runningProperty в интерфейсе Worker<V>
      См. также:
      isRunning()
    • message

      public final ReadOnlyStringProperty messageProperty
      Определено:
      messageProperty в интерфейсе Worker<V>
      См. также:
      getMessage()
    • title

      public final ReadOnlyStringProperty titleProperty
      Определено:
      titleProperty в интерфейсе Worker<V>
      См. также:
      getTitle()
    • 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()
      Создать новый сервис.
  • Методы

    • getState

      public final Worker.State getState()
      Получает значение свойства state.
      Указано:
      getState в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      Текущее состояние этого Worker
    • stateProperty

      public final ReadOnlyObjectProperty<Worker.State> stateProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyObjectProperty, представляющий текущее состояние.
      Указано:
      stateProperty в интерфейсе Worker<V>
      См. также:
      getState()
    • getValue

      public final V getValue()
      Получает значение свойства value.
      Указано:
      getValue в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      текущее значение этого Worker
    • valueProperty

      public final ReadOnlyObjectProperty<V> valueProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyObjectProperty, представляющий значение.
      Указано:
      valueProperty в интерфейсе Worker<V>
      См. также:
      getValue()
    • getException

      public final Throwable getException()
      Получает значение свойства exception.
      Указано:
      getException в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      исключение, если оно произошло
    • exceptionProperty

      public final ReadOnlyObjectProperty<Throwable> exceptionProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyObjectProperty, представляющий любое произошедшее исключение.
      Указано:
      exceptionProperty в интерфейсе Worker<V>
      См. также:
      getException()
    • getWorkDone

      public final double getWorkDone()
      Получает значение свойства workDone.
      Указано:
      getWorkDone в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      объём проделанной работы
      См. также:
      Worker.totalWorkProperty(), Worker.progressProperty()
    • workDoneProperty

      public final ReadOnlyDoubleProperty workDoneProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyDoubleProperty, представляющий текущую степень выполнения.
      Указано:
      workDoneProperty в интерфейсе Worker<V>
      См. также:
      getWorkDone()
    • getTotalWork

      public final double getTotalWork()
      Получает значение свойства totalWork.
      Указано:
      getTotalWork в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      общий объём работы
      См. также:
      Worker.workDoneProperty(), Worker.progressProperty()
    • totalWorkProperty

      public final ReadOnlyDoubleProperty totalWorkProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyDoubleProperty, представляющий максимальный объём работы, который требуется выполнить. Эти «единицы работы» имеют значение для реализации Worker, например, количество байтов, которые необходимо загрузить, или количество изображений для обработки, или какой-либо другой метрик.
      Указано:
      totalWorkProperty в интерфейсе Worker<V>
      См. также:
      getTotalWork()
    • getProgress

      public final double getProgress()
      Получает значение свойства progress.
      Указано:
      getProgress в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      текущая степень выполнения
      См. также:
      Worker.workDoneProperty(), Worker.totalWorkProperty()
    • progressProperty

      public final ReadOnlyDoubleProperty progressProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyDoubleProperty, представляющий степень выполнения.
      Указано:
      progressProperty в интерфейсе Worker<V>
      См. также:
      getProgress()
    • isRunning

      public final boolean isRunning()
      Получает значение свойства running.
      Указано:
      isRunning в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      true, если этот Worker запущен
    • runningProperty

      public final ReadOnlyBooleanProperty runningProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyBooleanProperty, представляющий запущен ли Worker.
      Указано:
      runningProperty в интерфейсе Worker<V>
      См. также:
      isRunning()
    • getMessage

      public final String getMessage()
      Получает значение свойства message.
      Указано:
      getMessage в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      текущее сообщение
    • messageProperty

      public final ReadOnlyStringProperty messageProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyStringProperty, представляющий сообщение.
      Указано:
      messageProperty в интерфейсе Worker<V>
      См. также:
      getMessage()
    • getTitle

      public final String getTitle()
      Получает значение свойства title.
      Указано:
      getTitle в интерфейсе Worker<V>
      Описание свойства:
      Возвращает:
      текущее заголовок
    • titleProperty

      public final ReadOnlyStringProperty titleProperty()
      Описание скопировано из интерфейса: Worker
      Получает ReadOnlyStringProperty, представляющий заголовок.
      Указано:
      titleProperty в интерфейсе Worker<V>
      См. также:
      getTitle()
    • 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 вызывается всякий раз, когда состояние Task переходит в состояние READY.
      С тех пор:
      JavaFX 2.1
      См. также:
      getOnReady(), setOnReady(EventHandler)
    • getOnReady

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      public void reset()
      Сбрасывает сервис. Может вызываться только в одном из завершающих состояний, то есть, УСПЕШНО, НЕУДАЧНО или ОТМЕНЕНО, или при состоянии ГОТОВНО. Этот метод должен вызываться только на потоке приложения FX.
    • start

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

      protected void executeTask​(Task<V> task)

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

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

      Parameters:
      task - непустая задача для выполнения
      Since:
      JavaFX 2.1
    • addEventHandler

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

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

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

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

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

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

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

      Parameters:
      event - событие для вызова
      Since:
      JavaFX 2.1
    • buildEventDispatchChain

      public EventDispatchChain buildEventDispatchChain​(EventDispatchChain tail)
      Описание скопировано из интерфейса: EventTarget
      Строит цепочку обработки событий для этого объекта. Цепочка обработки событий содержит обработчики событий, которые могут быть заинтересованы в обработке событий, нацеленных на этот EventTarget. Этот объект-цель события не добавляется в цепочку автоматически, поэтому, если он хочет обрабатывать события, ему нужно добавить EventDispatcher для себя в цепочку.

      В случае, если объект-цель события является частью иерархии, цепочка для него обычно строится из обработчиков событий, собранных от корня иерархии до объекта-цели.

      Цепочка обработки событий строится путём модификации предоставленной начальной цепочки обработки событий. Возвращаемая цепочка должна иметь начальную цепочку в конце, поэтому обработчики должны быть добавлены перед начальной цепочкой.

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

      Specified by:
      buildEventDispatchChain in interface EventTarget
      Parameters:
      tail - начальная цепочка, на основе которой нужно построить
      Returns:
      результирующая цепочка обработки событий для этого объекта
    • createTask

      protected abstract Task<V> createTask()
      Вызывается после запуска службы в потоке приложения JavaFX. Реализации должны сохранять все состояния в постоянных переменных до создания задачи, поскольку обращение к свойствам, определённым в службе внутри кода задачи в фоновом потоке, приведёт к исключениям. Например:
      
           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());
           }
       
      Returns:
      задача для выполнения

© 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