Sobes.tech
Junior — Middle
104

Comment initier l'exécution d'une tâche asynchrone avec Celery?

Entreprises à qui on a demandé
ООО Корпорация ЗНАК

Réponse de l'IA

sobes.tech IA

Для инициирования выполнения асинхронной задачи с использованием 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, с помощью которого можно отслеживать статус и получить результат.