Versions in this module Expand all Collapse all v1 v1.1.3 Nov 26, 2023 Changes in this version + type CronExpression struct + func ParseCronExpression(expression string) (*CronExpression, error) + func (expression *CronExpression) NextTime(t time.Time) time.Time + type CronTrigger struct + func CreateCronTrigger(expression string, location *time.Location) (*CronTrigger, error) + func (trigger *CronTrigger) NextExecutionTime(ctx TriggerContext) time.Time + type Option func(task *SchedulerTask) error + func WithLocation(location string) Option + func WithStartTime(year int, month time.Month, day, hour, min, sec int) Option + func WithTime(t time.Time) Option + type ScheduledRunnableTask struct + func CreateScheduledRunnableTask(id int, task Task, triggerTime time.Time, period time.Duration, fixedRate bool) (*ScheduledRunnableTask, error) + func (scheduledRunnableTask *ScheduledRunnableTask) Cancel() + func (scheduledRunnableTask *ScheduledRunnableTask) IsCancelled() bool + type ScheduledTask interface + Cancel func() + IsCancelled func() bool + type ScheduledTaskQueue []*ScheduledRunnableTask + func (queue ScheduledTaskQueue) Len() int + func (queue ScheduledTaskQueue) Less(i, j int) bool + func (queue ScheduledTaskQueue) SorByTriggerTime() + func (queue ScheduledTaskQueue) Swap(i, j int) + type SchedulerTask struct + func CreateSchedulerTask(task Task, options ...Option) (*SchedulerTask, error) + func (task *SchedulerTask) GetInitialDelay() time.Duration + type SimpleTaskExecutor struct + func NewSimpleTaskExecutor(runner TaskRunner) *SimpleTaskExecutor + func (executor *SimpleTaskExecutor) IsShutdown() bool + func (executor *SimpleTaskExecutor) Schedule(task Task, delay time.Duration) (ScheduledTask, error) + func (executor *SimpleTaskExecutor) ScheduleAtFixedRate(task Task, initialDelay time.Duration, period time.Duration) (ScheduledTask, error) + func (executor *SimpleTaskExecutor) ScheduleWithFixedDelay(task Task, initialDelay time.Duration, delay time.Duration) (ScheduledTask, error) + func (executor *SimpleTaskExecutor) Shutdown() chan bool + type SimpleTaskRunner struct + func NewSimpleTaskRunner() *SimpleTaskRunner + func (runner *SimpleTaskRunner) Run(task Task) + type SimpleTaskScheduler struct + func NewSimpleTaskScheduler(executor TaskExecutor) *SimpleTaskScheduler + func (scheduler *SimpleTaskScheduler) IsShutdown() bool + func (scheduler *SimpleTaskScheduler) Schedule(task Task, options ...Option) (ScheduledTask, error) + func (scheduler *SimpleTaskScheduler) ScheduleAtFixedRate(task Task, period time.Duration, options ...Option) (ScheduledTask, error) + func (scheduler *SimpleTaskScheduler) ScheduleWithCron(task Task, expression string, options ...Option) (ScheduledTask, error) + func (scheduler *SimpleTaskScheduler) ScheduleWithFixedDelay(task Task, delay time.Duration, options ...Option) (ScheduledTask, error) + func (scheduler *SimpleTaskScheduler) Shutdown() chan bool + type SimpleTriggerContext struct + func NewSimpleTriggerContext() *SimpleTriggerContext + func (ctx *SimpleTriggerContext) LastCompletionTime() time.Time + func (ctx *SimpleTriggerContext) LastExecutionTime() time.Time + func (ctx *SimpleTriggerContext) LastTriggeredExecutionTime() time.Time + func (ctx *SimpleTriggerContext) Update(lastCompletionTime time.Time, lastExecutionTime time.Time, ...) + type Task func(ctx context.Context) + type TaskExecutor interface + IsShutdown func() bool + Schedule func(task Task, delay time.Duration) (ScheduledTask, error) + ScheduleAtFixedRate func(task Task, initialDelay time.Duration, period time.Duration) (ScheduledTask, error) + ScheduleWithFixedDelay func(task Task, initialDelay time.Duration, delay time.Duration) (ScheduledTask, error) + Shutdown func() chan bool + func NewDefaultTaskExecutor() TaskExecutor + type TaskRunner interface + Run func(task Task) + func NewDefaultTaskRunner() TaskRunner + type TaskScheduler interface + IsShutdown func() bool + Schedule func(task Task, options ...Option) (ScheduledTask, error) + ScheduleAtFixedRate func(task Task, period time.Duration, options ...Option) (ScheduledTask, error) + ScheduleWithCron func(task Task, expression string, options ...Option) (ScheduledTask, error) + ScheduleWithFixedDelay func(task Task, delay time.Duration, options ...Option) (ScheduledTask, error) + Shutdown func() chan bool + func NewDefaultTaskScheduler() TaskScheduler + type Trigger interface + NextExecutionTime func(ctx TriggerContext) time.Time + type TriggerContext interface + LastCompletionTime func() time.Time + LastExecutionTime func() time.Time + LastTriggeredExecutionTime func() time.Time + type TriggerTask struct + func CreateTriggerTask(task Task, executor TaskExecutor, trigger Trigger) (*TriggerTask, error) + func (task *TriggerTask) Cancel() + func (task *TriggerTask) IsCancelled() bool + func (task *TriggerTask) Run(ctx context.Context) + func (task *TriggerTask) Schedule() (ScheduledTask, error)