0Pricing
Flask Academy · Lekcja

Definiowanie i wywoływanie zadania

Napisz zadanie i uruchom je za pomocą delay.

Definiowanie i wywoływanie zadania to bezpłatna lekcja Flask Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Flask Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Flask Academy zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

What a Task Is

A Celery task is just a Python function marked so workers can run it later. You decorate it once and it becomes enqueueable.

The task Decorator

Mark a function with the Celery task decorator. Now it has extra methods like delay that schedule it onto the queue.

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

Call It Normally vs Queued

Calling add(2, 3) runs it right now in your process. To run it on a worker instead, you call its delay method.

Enqueue with delay

The delay shortcut puts the job on the broker and returns immediately. The work happens later on a worker.

add.delay(2, 3)

apply_async for Options

Need more control like a countdown or queue name? Use apply_async, which takes args plus scheduling options.

add.apply_async(args=[2, 3], countdown=10)

You Get an AsyncResult

Both delay and apply_async return an AsyncResult. It carries the task id you use to look up the result later.

job = add.delay(2, 3)
print(job.id)

Arguments Must Serialize

Task arguments travel through the broker, so they must be serializable: use plain data like ints, strings, lists, and dicts.

Pass IDs, Not Objects

Do not send a database row to a task. Send its id instead, then re-fetch the object inside the task with a fresh session.

Enqueue Inside a View

A view validates input, enqueues the job, and returns a fast response. The user is not kept waiting for the slow part.

@app.post("/report")
def report():
    add.delay(2, 3)
    return {"status": "queued"}

Name Tasks Clearly

Give tasks descriptive names like send_welcome_email. Clear names make logs and the broker dashboard far easier to read. 🔍

Keep Tasks Small

A good task does one clear job. Small, focused tasks are easier to retry, monitor, and reason about when something breaks.

Quick Check

You want a function to run on a worker.

Recap

Decorate a function as a task, call delay or apply_async to queue it, pass serializable args, and enqueue from thin views. ✅

Często zadawane pytania

Czy lekcja „Definiowanie i wywoływanie zadania” jest bezpłatna?

Tak — pełny tekst „Definiowanie i wywoływanie zadania” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Flask Academy, przejdź na CoddyKit PRO. Kurs Flask Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Definiowanie i wywoływanie zadania”?

Napisz zadanie i uruchom je za pomocą delay. Ćwiczysz Flask Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Flask Academy?

Nie wymagamy żadnego doświadczenia. Flask Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Definiowanie i wywoływanie zadania”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Flask Academy?

Tak. Każda lekcja Flask Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Dlaczego warto przenieść pracę poza żądanie
  2. Podłączanie Celery do fabryki aplikacji
  3. Definiowanie i wywoływanie zadania
  4. Śledzenie wyników i obsługa błędów
← Powrót do Flask Academy