Skip to content

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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]
Loading

License

This project is licensed under the MIT LICENSE.

Author

邱敬幃 Pardn Chiu

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


©️ 2025 邱敬幃 Pardn Chiu

About

(module) A Go scheduling library with task dependencies, timeout control, and cron expressions

Topics

Resources

Stars

36 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages