/gotimewheel

golang实现linux的时间轮定时器

Primary LanguageGo

gotimewheel

golang实现的分层时间轮,参照linux的时间轮实现

安装

go get -u github.com/lycblank/gotimewheel

使用

tw := NewTimeWheel(time.Second)
tw.AddTimer(2*time.Second, func(arg interface{}){
    beforeTime := arg.(time.Time)
    nowTime := time.Now()
    fmt.Println(beforeTime.Unix(), nowTime.Unix())
    }, time.Now())
time.Sleep(3*time.Second)