Cluster · разработчикам

Task

Состояние и управление созданной задачей. Изменения параметров сверяют ревизию.

Все методы SDK · Типы и ошибки

Получение объекта

task = app.tasks.task("task-id")

task ссылается на существующую задачу своего экземпляра; изменение возможно только в допустимом состоянии.

__init__

Создаёт Task. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.

def __init__(tasks: Tasks, id: str, data: TaskInfo | None = None) -> None: ...

Аргументы

Результат

None. Создаёт Task. Обычный способ получения объекта показан выше; прямой конструктор не выполняет сетевые запросы.

Права

Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.

Ошибки

Пример

# Обычный способ получения объекта:
task = app.tasks.task("task-id")

state

Возвращает состояние из локально загруженных данных; само по себе не опрашивает ядро.

def state() -> str | None: ...

Свойство: читается без скобок и без await.

Аргументы

Нет.

Результат

str | None. Возвращает состояние из локально загруженных данных; само по себе не опрашивает ядро.

Права

Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.

Ошибки

Пример

value = task.state

active

Проверяет, что объект не был удалён локально.

def active() -> None: ...

Аргументы

Нет.

Результат

None. Проверяет, что объект не был удалён локально.

Права

Не требует прав: операция выполняется локально и сама не обращается к ядру. Права понадобятся при отправке, сохранении или чтении через службу.

Ошибки

Пример

result = task.active()

load

Загружает актуальные данные и ревизию задачи.

async def load() -> Self: ...

Аргументы

Нет.

Результат

Self. Тот же объект после успешной операции. Загружает актуальные данные и ревизию задачи.

Права

Нужны tasks.create.

Ошибки

Пример

result = await task.load()

edit

Меняет допустимые параметры задачи с проверкой ревизии; при необходимости предварительно загружает состояние.

async def edit(**values: JSON) -> Self: ...

Аргументы

Результат

Self. Тот же объект после успешной операции. Меняет допустимые параметры задачи с проверкой ревизии; при необходимости предварительно загружает состояние.

Права

Нужны tasks.create.

Ошибки

Пример

result = await task.edit(retry=0)

reschedule

Переносит задачу на абсолютное время с проверкой ревизии.

async def reschedule(at: datetime | float) -> Self: ...

Аргументы

Результат

Self. Тот же объект после успешной операции. Переносит задачу на абсолютное время с проверкой ревизии.

Права

Нужны tasks.create.

Ошибки

Пример

await task.reschedule(2000000000.0)

after

Переносит задачу на указанное число секунд от текущего времени.

async def after(seconds: float) -> Self: ...

Аргументы

Результат

Self. Тот же объект после успешной операции. Переносит задачу на указанное число секунд от текущего времени.

Права

Нужны tasks.create.

Ошибки

Пример

result = await task.after(60)

cancel

Запрашивает отмену и заменяет локальные данные ответом ядра.

async def cancel() -> Self: ...

Аргументы

Нет.

Результат

Self. Тот же объект после успешной операции. Запрашивает отмену и заменяет локальные данные ответом ядра.

Права

Нужны tasks.create.

Ошибки

Пример

result = await task.cancel()

delete

Удаляет запись задачи и отмечает объект удалённым.

async def delete() -> bool: ...

Аргументы

Нет.

Результат

bool. Удаляет запись задачи и отмечает объект удалённым.

Права

Нужны tasks.create.

Ошибки

Пример

result = await task.delete()

wait

Ожидает состояние done и возвращает result. Ошибка или отмена задачи вызывает RuntimeError; истечение ожидания не отменяет задачу.

async def wait(timeout: float = 30, poll: float = 0.1) -> JSON: ...

Аргументы

Результат

JSON. Ожидает состояние done и возвращает result. Ошибка или отмена задачи вызывает RuntimeError; истечение ожидания не отменяет задачу.

Права

Нужны tasks.create.

Ошибки

Пример

result = await task.wait()