Sobes.tech
Назад к вопросам
Junior — Middle
79

Каким образом инициировать выполнение асинхронной задачи с использованием Celery?

Компании, где спрашивали
ООО Корпорация ЗНАК

Ответ от нейросети

sobes.tech AI

Для инициирования выполнения асинхронной задачи с использованием Celery в Python нужно:

  1. Определить задачу с помощью декоратора @app.task.
  2. Вызвать задачу с помощью метода .delay() или .apply_async().

Пример:

from celery import Celery

app = Celery('tasks', broker='pyamqp://guest@localhost//')

@app.task
def add(x, y):
    return x + y

# Инициируем асинхронное выполнение
result = add.delay(4, 6)

# Можно получить результат позже
print(result.get(timeout=10))

Метод delay() отправляет задачу в очередь и сразу возвращает объект AsyncResult, с помощью которого можно отслеживать статус и получить результат.