scheduler

package
v1.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 11, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Close

func Close()

func PushTask

func PushTask(task Task)

func Schedule

func Schedule(timerPrecision time.Duration)

Types

type Hook

type Hook func()

type LocalScheduler

type LocalScheduler interface {
	Schedule(Task)
}

LocalScheduler schedules task to a customized goroutine

type Task

type Task func()

type Timer

type Timer struct {
	// contains filtered or unexported fields
}

Timer represents a cron job

func NewAfterTimer

func NewAfterTimer(duration time.Duration, fn TimerFunc) *Timer

NewAfterTimer returns a new Timer containing a function that will be called after duration that specified by the duration argument. The duration d must be greater than zero; if not, NewAfterTimer will panic. Stop the timer to release associated resources.

func NewCondTimer

func NewCondTimer(condition TimerCondition, fn TimerFunc) *Timer

NewCondTimer returns a new Timer containing a function that will be called when condition satisfied that specified by the condition argument. The duration d must be greater than zero; if not, NewCondTimer will panic. Stop the timer to release associated resources.

func NewCountTimer

func NewCountTimer(interval time.Duration, count int, fn TimerFunc) *Timer

NewCountTimer returns a new Timer containing a function that will be called with a period specified by the duration argument. After count times, timer will be stopped automatically, It adjusts the intervals for slow receivers. The duration d must be greater than zero; if not, NewCountTimer will panic. Stop the timer to release associated resources.

func NewTimer

func NewTimer(interval time.Duration, fn TimerFunc) *Timer

NewTimer returns a new Timer containing a function that will be called with a period specified by the duration argument. It adjusts the intervals for slow receivers. The duration d must be greater than zero; if not, NewTimer will panic. Stop the timer to release associated resources.

func (*Timer) ID

func (t *Timer) ID() int64

ID returns id of current timer

func (*Timer) Stop

func (t *Timer) Stop()

Stop turns off a timer. After Stop, fn will not be called forever

type TimerCondition

type TimerCondition interface {
	Check(now time.Time) bool
}

TimerCondition represents a checker that returns true when cron job needs to execute

type TimerFunc

type TimerFunc func()

TimerFunc represents a function which will be called periodically in main logic goroutine.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL