Skip to content

This package provides a task scheduler in Go with support for both static and predictive scheduling of tasks.

License

Notifications You must be signed in to change notification settings

escabora/scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scheduler Package

Overview

This package provides a task scheduler in Go with support for both static and predictive scheduling of tasks.

Features

  • Static Scheduling: Schedule tasks with cron-like syntax.
  • Predictive Scheduling: Automatically estimate future execution times based on runtime behavior.
  • Extensible Design: Easy to add custom matchers or prediction models.

Installation

go get github.com/escabora/scheduler

Usage

import (
	"github.com/escabora/scheduler/internal/schedule"
)

func main() {
	s := schedule.NewScheduler()

	s.AddTask("* * * * *", func() {
		fmt.Println("Running static task")
	})

	s.Start()
	defer s.Stop()
}

Testing

Run tests with:

go test ./tests/...

About

This package provides a task scheduler in Go with support for both static and predictive scheduling of tasks.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published