README.md

July 17, 2026 · View on GitHub

Note

This README was generated by SKILL, get the ZH version from here.


SCHEDULE TASKS WITH DEPENDENCIES, TIMEOUTS, AND CRON EXPRESSIONS

Go Reference Release License Coverage


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

Full 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

dev@pardn.io
https://linkedin.com/in/pardnchiu


©️ 2025 邱敬幃 Pardn Chiu