Skip to content

hyperjiang/timewheel

Repository files navigation

Time Wheel

GoDoc CI codecov Release

Simple time wheel in golang.

Prerequisite

go version >= 1.18

Usage

import "github.com/hyperjiang/timewheel"

type MyHandler struct {
}

func (h *MyHandler) Handle(param any) {
	// do your own business
}

tw := timewheel.New(
    timewheel.WithHandler(new(MyHandler)),
    timewheel.WithLogger(timewheel.Printf),
    timewheel.WithSlotNum(10),
    timewheel.WithTickDuration(time.Millisecond*100),
)

tw.Start()

tw.AddTask(time.Second, "1s")
tw.AddTask(time.Second*10, "10s")

About

Time wheel in golang.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages