[!NOTE] This README was generated by SKILL, get the ZH version from here.
SCHEDULE TASKS WITH DEPENDENCIES, TIMEOUTS, AND CRON EXPRESSIONS
A Go scheduling library with task dependencies, timeout control, and cron expressions
Table of Contents
Features
go get github.com/pardnchiu/go-scheduler· Documentation
- Task Dependency Chains — Declare prerequisites via Wait, with Stop or Skip strategies on failure.
- Timeouts and Callbacks — Set per-task execution limits; timeouts trigger onDelay and mark failure.
- Cron and Descriptors — Supports 5-field cron, @hourly/@daily descriptors, and @every intervals.
- Heap Priority Queue — Min-heap tracks next fire times; add and remove tasks without restart.
- Graceful Shutdown — Stop returns a context that completes after in-flight tasks finish.
Architecture
graph TB
Client[Caller] --> Cron[Cron Scheduler]
Cron --> Heap[Task Min-Heap]
Cron --> Parser[Cron Parser]
Cron --> Depend[Dependency Manager]
Depend --> Workers[Worker Pool]
Heap --> Run[Task Execution]
Depend --> Run
Run --> Result[State Update]
License
This project is licensed under the MIT LICENSE.
Author
邱敬幃 Pardn Chiu
hi@pardn.io
https://linkedin.com/in/pardnchiu
©️ 2025 邱敬幃 Pardn Chiu