mirror of
https://github.com/astaxie/beego.git
synced 2024-12-22 17:10:50 +00:00
1.fix start task twice issue
This commit is contained in:
parent
88c5dfa6ea
commit
710c7c79d4
@ -389,11 +389,16 @@ func dayMatches(s *Schedule, t time.Time) bool {
|
||||
|
||||
// StartTask start all tasks
|
||||
func StartTask() {
|
||||
if isstart {
|
||||
//If already started, no need to start another goroutine.
|
||||
return
|
||||
}
|
||||
isstart = true
|
||||
go run()
|
||||
}
|
||||
|
||||
func run() {
|
||||
|
||||
now := time.Now().Local()
|
||||
for _, t := range AdminTaskList {
|
||||
t.SetNext(now)
|
||||
@ -417,7 +422,7 @@ func run() {
|
||||
if e.GetNext() != effective {
|
||||
break
|
||||
}
|
||||
go e.Run()
|
||||
go e.Run()
|
||||
e.SetPrev(e.GetNext())
|
||||
e.SetNext(effective)
|
||||
}
|
||||
@ -432,8 +437,11 @@ func run() {
|
||||
|
||||
// StopTask stop all tasks
|
||||
func StopTask() {
|
||||
isstart = false
|
||||
stop <- true
|
||||
if(isstart){
|
||||
isstart = false
|
||||
stop <- true
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// AddTask add task with name
|
||||
|
Loading…
Reference in New Issue
Block a user