gf: github.com/johng-cn/gf/g/os/gcron Index | Examples | Files

package gcron

import "github.com/johng-cn/gf/g/os/gcron"

Package gcron implements a cron pattern parser and job runner.

定时任务.

Index

Examples

Package Files

gcron.go gcron_cron.go gcron_entry.go gcron_schedule.go

Constants

const (
    STATUS_READY   = 0
    STATUS_RUNNING = 1
    STATUS_STOPPED = 2
    STATUS_CLOSED  = -1
)

func DelayAdd Uses

func DelayAdd(delay time.Duration, pattern string, job func(), name ...string)

延迟添加定时任务

func DelayAddOnce Uses

func DelayAddOnce(delay time.Duration, pattern string, job func(), name ...string)

延迟添加只运行一次的定时任务,delay参数单位为秒

func DelayAddSingleton Uses

func DelayAddSingleton(delay time.Duration, pattern string, job func(), name ...string)

延迟添加单例定时任务,delay参数单位为秒

func DelayAddTimes Uses

func DelayAddTimes(delay time.Duration, pattern string, times int, job func(), name ...string)

延迟添加运行指定次数的定时任务,delay参数单位为秒

func Remove Uses

func Remove(name string)

根据指定名称删除定时任务

func Size Uses

func Size() int

获取所有已注册的定时任务数量

func Start Uses

func Start(name string)

启动指定的定时任务

func Stop Uses

func Stop(name string)

停止指定的定时任务

type Cron Uses

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

定时任务管理对象

func New Uses

func New() *Cron

创建自定义的定时任务管理对象

func (*Cron) Add Uses

func (c *Cron) Add(pattern string, job func(), name ...string) (*Entry, error)

添加定时任务

func (*Cron) AddOnce Uses

func (c *Cron) AddOnce(pattern string, job func(), name ...string) (*Entry, error)

添加只运行一次的定时任务

func (*Cron) AddSingleton Uses

func (c *Cron) AddSingleton(pattern string, job func(), name ...string) (*Entry, error)

添加单例运行定时任务

Code:

gcron.AddSingleton("* * * * * *", func() {
    glog.Println("doing")
    time.Sleep(2 * time.Second)
})
select {}

func (*Cron) AddTimes Uses

func (c *Cron) AddTimes(pattern string, times int, job func(), name ...string) (*Entry, error)

添加运行指定次数的定时任务

func (*Cron) Close Uses

func (c *Cron) Close()

关闭定时任务

func (*Cron) DelayAdd Uses

func (c *Cron) DelayAdd(delay time.Duration, pattern string, job func(), name ...string)

延迟添加定时任务

func (*Cron) DelayAddOnce Uses

func (c *Cron) DelayAddOnce(delay time.Duration, pattern string, job func(), name ...string)

延迟添加运行指定次数的定时任务

func (*Cron) DelayAddSingleton Uses

func (c *Cron) DelayAddSingleton(delay time.Duration, pattern string, job func(), name ...string)

延迟添加单例定时任务

func (*Cron) DelayAddTimes Uses

func (c *Cron) DelayAddTimes(delay time.Duration, pattern string, times int, job func(), name ...string)

延迟添加只运行一次的定时任务

func (*Cron) Entries Uses

func (c *Cron) Entries() []*Entry

获取所有已注册的定时任务项(按照注册时间从小到大进行排序)

func (*Cron) Remove Uses

func (c *Cron) Remove(name string)

根据指定名称删除定时任务

func (*Cron) Search Uses

func (c *Cron) Search(name string) *Entry

检索指定名称的定时任务

func (*Cron) Size Uses

func (c *Cron) Size() int

获取所有已注册的定时任务数量

func (*Cron) Start Uses

func (c *Cron) Start(name ...string)

开启定时任务执行(可以指定特定名称的一个或若干个定时任务)

func (*Cron) Stop Uses

func (c *Cron) Stop(name ...string)

停止定时任务执行(可以指定特定名称的一个或若干个定时任务)

type Entry Uses

type Entry struct {
    Name    string    // 定时任务名称
    Job     func()    // 注册定时任务方法
    JobName string    // 注册定时任务名称
    Time    time.Time // 注册时间
    // contains filtered or unexported fields
}

定时任务项

func Add Uses

func Add(pattern string, job func(), name ...string) (*Entry, error)

添加执行方法,可以给定名字,以便于后续执行删除

func AddOnce Uses

func AddOnce(pattern string, job func(), name ...string) (*Entry, error)

添加只运行一次的定时任务

func AddSingleton Uses

func AddSingleton(pattern string, job func(), name ...string) (*Entry, error)

添加单例运行定时任务

func AddTimes Uses

func AddTimes(pattern string, times int, job func(), name ...string) (*Entry, error)

添加运行指定次数的定时任务

func Entries Uses

func Entries() []*Entry

获取所有已注册的定时任务项

func Search(name string) *Entry

检索指定名称的定时任务

func (*Entry) Close Uses

func (entry *Entry) Close()

关闭定时任务

func (*Entry) IsSingleton Uses

func (entry *Entry) IsSingleton() bool

是否单例运行

func (*Entry) SetSingleton Uses

func (entry *Entry) SetSingleton(enabled bool)

设置单例运行

func (*Entry) SetStatus Uses

func (entry *Entry) SetStatus(status int) int

设置定时任务状态, 返回设置之前的状态

func (*Entry) SetTimes Uses

func (entry *Entry) SetTimes(times int)

设置任务的运行次数

func (*Entry) Start Uses

func (entry *Entry) Start()

启动定时任务

func (*Entry) Status Uses

func (entry *Entry) Status() int

定时任务状态

func (*Entry) Stop Uses

func (entry *Entry) Stop()

停止定时任务

Package gcron imports 13 packages (graph). Updated 2019-01-19. Refresh now. Tools for package owners.