scheduler

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Scheduler

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

Scheduler 任务调度器

func NewScheduler

func NewScheduler(logger *zap.Logger) *Scheduler

NewScheduler 创建任务调度器

func (*Scheduler) AddTask

func (s *Scheduler) AddTask(task *Task) error

AddTask 添加任务

func (*Scheduler) DisableTask

func (s *Scheduler) DisableTask(taskID string) error

DisableTask 禁用任务

func (*Scheduler) EnableTask

func (s *Scheduler) EnableTask(taskID string) error

EnableTask 启用任务

func (*Scheduler) GetTask

func (s *Scheduler) GetTask(taskID string) (*Task, bool)

GetTask 获取任务

func (*Scheduler) ListTasks

func (s *Scheduler) ListTasks() []*Task

ListTasks 列出所有任务

func (*Scheduler) RegisterExecutor

func (s *Scheduler) RegisterExecutor(taskType string, executor TaskExecutor)

RegisterExecutor 注册任务执行器

func (*Scheduler) RemoveTask

func (s *Scheduler) RemoveTask(taskID string) error

RemoveTask 移除任务

func (*Scheduler) RunTaskNow

func (s *Scheduler) RunTaskNow(ctx context.Context, taskID string) error

RunTaskNow 立即运行任务

func (*Scheduler) Start

func (s *Scheduler) Start()

Start 启动调度器

func (*Scheduler) Stop

func (s *Scheduler) Stop()

Stop 停止调度器

type Task

type Task struct {
	ID           string
	Name         string
	Type         string // "command", "script", "file_operation", "service_operation"
	Schedule     string // Cron 表达式
	Command      string
	Args         []string
	Enabled      bool
	LastRun      *time.Time
	NextRun      *time.Time
	RunCount     int64
	SuccessCount int64
	FailCount    int64
	// contains filtered or unexported fields
}

Task 任务

type TaskExecutor

type TaskExecutor interface {
	Execute(ctx context.Context, task *Task) error
}

TaskExecutor 任务执行器接口

Jump to

Keyboard shortcuts

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