Documentation ¶
Overview ¶
Package scheduled 计划任务管理工具
通过 scheduled 可以实现管理类似 linux 中 crontab 功能的计划任务功能。 当然功能并不止于此,用户可以实现自己的调度算法,定制任务的启动机制。
目前 scheduled 内置了以下三种算法:
- cron 实现了 crontab 中的大部分语法功能;
- at 在固定的时间点执行一次任务;
- ticker 以固定的时间段执行任务,与 time.Ticker 相同。
Index ¶
- type Job
- type JobFunc
- type Logger
- type Scheduler
- type SchedulerFunc
- type Server
- func (s *Server) At(title localeutil.Stringer, f JobFunc, t time.Time, delay bool) context.CancelFunc
- func (s *Server) Cron(title localeutil.Stringer, f JobFunc, spec string, delay bool) context.CancelFunc
- func (s *Server) Jobs() []*Job
- func (s *Server) Location() *time.Location
- func (s *Server) New(title localeutil.Stringer, f JobFunc, scheduler Scheduler, delay bool) context.CancelFunc
- func (s *Server) Serve(ctx context.Context) error
- func (s *Server) Tick(title localeutil.Stringer, f JobFunc, dur time.Duration, imm, delay bool) context.CancelFunc
- type State
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Job ¶
type Job struct {
// contains filtered or unexported fields
}
Job 定时任务
type Logger ¶ added in v0.12.0
type Logger interface { // Error 输出错误对象到日志 Error(error) // LocaleString 输出本地化的内容到日志 LocaleString(localeutil.Stringer) }
Logger 日志接口
NOTE: 同时实现了 github.com/issue9/logs.Logger 对象
func NewTermLogger ¶ added in v0.19.0
func NewTermLogger(p *localeutil.Printer) Logger
NewTermLogger 声明输出到终的日志
type Scheduler ¶ added in v0.8.0
type Scheduler = schedulers.Scheduler
type SchedulerFunc ¶ added in v0.14.0
type SchedulerFunc = schedulers.SchedulerFunc
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server 管理所有的定时任务
func NewServer ¶
NewServer 声明 Server
loc 指定当前所采用的时区,若为 nil,则会采用 time.Local 的值; erro 计划任务发生的错误,向此输出,可以为空,表示不输出; info 计划任务的执行信息,向此输出,可以为空,表示不输出;
func (*Server) At ¶ added in v0.5.0
func (s *Server) At(title localeutil.Stringer, f JobFunc, t time.Time, delay bool) context.CancelFunc
At 添加 At 类型的定时器
具体文件可以参考 at.At
func (*Server) Cron ¶ added in v0.5.0
func (s *Server) Cron(title localeutil.Stringer, f JobFunc, spec string, delay bool) context.CancelFunc
Cron 使用 cron 表达式新建一个定时任务
具体文件可以参考 cron.Parse
func (*Server) New ¶
func (s *Server) New(title localeutil.Stringer, f JobFunc, scheduler Scheduler, delay bool) context.CancelFunc
New 添加一个新的定时任务
title 任务的简要描述; delay 是否从任务执行完之后,才开始计算下个执行的时间点。 返回一个取消当前任务的方法,同时会从列表中删除。
type State ¶
type State int8
func (State) MarshalText ¶ added in v0.13.0
func (*State) UnmarshalText ¶ added in v0.13.0
Directories ¶
Path | Synopsis |
---|---|
Package schedulers 实现了部分时间调度的算法
|
Package schedulers 实现了部分时间调度的算法 |
at
Package at 提供类似于 at 指令的定时器
|
Package at 提供类似于 at 指令的定时器 |
cron
Package cron 实现了 cron 表达式的 schedulers.Scheduler 接口
[cron]: https://zh.wikipedia.org/wiki/Cron
|
Package cron 实现了 cron 表达式的 schedulers.Scheduler 接口 [cron]: https://zh.wikipedia.org/wiki/Cron |
ticker
Package ticker 时间段固定的定时器
|
Package ticker 时间段固定的定时器 |
Click to show internal directories.
Click to hide internal directories.