Класс TimerTask
- Все реализуемые интерфейсы:
Runnable
public abstract class TimerTask extends Object implements Runnable
Timer. Задачу таймера нельзя использовать повторно. После того как задача запланирована для выполнения в Timer или отменена, последующие попытки запланировать ее выполнение приведут к выбросу IllegalStateException.
- Начиная с:
- 1.3
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создает новую задачу таймера. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
cancel() |
Отменяет эту задачу таймера. |
abstract void |
run() |
Действие, выполняемое этой задачей таймера. |
long |
scheduledExecutionTime() |
Возвращает время запланированного выполнения последнего фактического выполнения этой задачи. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, является ли другой объект «равным» этому объекту. |
protected void |
finalize() |
Устарел, подлежит удалению: этот элемент API может быть удален в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Приостанавливает текущий поток до его пробуждения, обычно посредством уведомления или прерывания. |
final void |
wait |
Приостанавливает текущий поток до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения определенного промежутка реального времени. |
final void |
wait |
Приостанавливает текущий поток до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения определенного промежутка реального времени. |
Подробное описание конструкторов
TimerTask
protected TimerTask()
Подробное описание методов
run
cancel
public boolean cancel()
Обратите внимание: вызов этого метода из метода run повторяющейся задачи таймера гарантирует, что задача таймера больше не будет выполняться.
Этот метод можно вызывать многократно; второй и последующие вызовы не оказывают никакого эффекта.
- Возвращает:
- true, если эта задача запланирована для однократного выполнения и еще не запускалась либо запланирована для повторного выполнения. Возвращает false, если задача была запланирована для однократного выполнения и уже запускалась, если задача никогда не была запланирована или если она уже была отменена. (Грубо говоря, этот метод возвращает
true, если он предотвращает выполнение одной или нескольких запланированных задач.)
scheduledExecutionTime
public long scheduledExecutionTime()
Этот метод обычно вызывается из метода run задачи, чтобы определить, достаточно ли своевременно выполняется текущий запуск задачи для выполнения запланированного действия:
public void run() {
if (System.currentTimeMillis() - scheduledExecutionTime() >=
MAX_TARDINESS)
return; // Too late; skip this execution.
// Perform the task
}
Этот метод обычно не используется для повторяющихся задач с выполнением с фиксированной задержкой, поскольку время их запланированного выполнения может со временем смещаться и поэтому не имеет особого значения.- Возвращает:
- время, на которое было запланировано последнее выполнение этой задачи, в формате, возвращаемом методом Date.getTime(). Возвращаемое значение не определено, если задача еще не приступила к первому выполнению.
- См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.