Creating Jobs¶
Enqueue¶
from pytaskflow.client import BackgroundJobClient
client = BackgroundJobClient(storage)
client.enqueue(send_email, "user@example.com")
Schedule¶
from datetime import datetime, UTC, timedelta
run_at = datetime.now(UTC) + timedelta(minutes=5)
client.schedule(send_email, run_at, "user@example.com")
Recurring¶
Continuations¶
Use continue_with() to enqueue follow-up work only after a parent job succeeds:
parent_id = client.enqueue(import_customers, "customers.csv")
client.continue_with(parent_id, send_import_summary, "ops@example.com")
Continuation jobs start in the Awaiting state. When the parent reaches
Succeeded, PyTaskFlow moves each awaiting continuation to Enqueued.