Resumen
Qué controla este paquete en el runtime
Scheduler añade trabajos recurrentes y diferidos a los servicios xtask. Descubre los métodos decorados cuando el contenedor DI está listo, ejecuta trabajos de arranque durante la inicialización, inicia el trabajo recurrente en el evento ready del ciclo de vida y expone APIs de servicio para inspección y ejecución manual.
Qué ofrece
- Los decoradores Cron(), Every(), Interval() y Timeout() declaran trabajos programados en servicios.
- Admite runOnBoot, runOnInit, grupos con nombre, reintentos y hooks de reintento o error por trabajo.
- SchedulerService lista trabajos y grupos, y puede iniciarlos, detenerlos o ejecutarlos manualmente.
- Rastrea el estado de ejecución, como conteos, fallos y el último error de ejecución.
Cómo encaja
- Se descubre automáticamente durante CreateApplication() después de que el contenedor haya registrado los providers.
- Inicia los trabajos recurrentes en el evento ready del ciclo de vida y detiene los handles activos durante app.close().
- Lo demuestra el ejemplo 11-scheduler_app con endpoints de inspección y grupos de mantenimiento.