mirror of
https://github.com/rfyiamcool/cronlib.git
synced 2025-09-27 00:05:51 +08:00
docs: format code annotation
This commit is contained in:
@@ -2,6 +2,7 @@ package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
"time"
|
||||
|
||||
"github.com/rfyiamcool/cronlib"
|
||||
)
|
||||
@@ -12,15 +13,23 @@ var (
|
||||
|
||||
func main() {
|
||||
handleClean()
|
||||
go start()
|
||||
|
||||
// dynamic add
|
||||
handleBackup()
|
||||
time.AfterFunc(time.Duration(2*time.Second), func() {
|
||||
// dynamic add
|
||||
handleBackup()
|
||||
})
|
||||
|
||||
select {}
|
||||
}
|
||||
time.AfterFunc(
|
||||
12*time.Second,
|
||||
func() {
|
||||
log.Println("stop clean")
|
||||
cron.StopService("clean")
|
||||
|
||||
log.Println("stop backup")
|
||||
cron.StopService("backup")
|
||||
},
|
||||
)
|
||||
|
||||
func start() {
|
||||
cron.Start()
|
||||
cron.Wait()
|
||||
}
|
||||
|
11
scheduler.go
11
scheduler.go
@@ -43,6 +43,7 @@ func SetPanicCaller(p panicType) {
|
||||
panicCaller = p
|
||||
}
|
||||
|
||||
// New - create CronSchduler
|
||||
func New() *CronSchduler {
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
return &CronSchduler{
|
||||
@@ -54,6 +55,7 @@ func New() *CronSchduler {
|
||||
}
|
||||
}
|
||||
|
||||
// CronSchduler
|
||||
type CronSchduler struct {
|
||||
tasks map[string]*JobModel
|
||||
ctx context.Context
|
||||
@@ -138,6 +140,7 @@ func (c *CronSchduler) Stop() {
|
||||
job.kill()
|
||||
delete(c.tasks, srv)
|
||||
}
|
||||
c.cancel()
|
||||
}
|
||||
|
||||
// StopService - stop job by serviceName
|
||||
@@ -228,10 +231,18 @@ func (c *CronSchduler) Start() {
|
||||
})
|
||||
}
|
||||
|
||||
// Wait - if all jobs is exited, return.
|
||||
func (c *CronSchduler) Wait() {
|
||||
c.wg.Wait()
|
||||
}
|
||||
|
||||
// WaitStop - when stop cronlib controller, return.
|
||||
func (c *CronSchduler) WaitStop() {
|
||||
select {
|
||||
case <-c.ctx.Done():
|
||||
}
|
||||
}
|
||||
|
||||
func (c *CronSchduler) GetServiceCron(srv string) (*JobModel, error) {
|
||||
c.RLock()
|
||||
defer c.RUnlock()
|
||||
|
Reference in New Issue
Block a user