- 重构tasksch
This commit is contained in:
@@ -2,7 +2,6 @@ package tasksch
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"time"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
@@ -167,29 +166,9 @@ func (task *ParallelTask) Run() {
|
||||
}
|
||||
}
|
||||
task.locker.Lock()
|
||||
if taskErr != nil { // 如果有错误,肯定就是失败了
|
||||
task.Status = TaskStatusFailed
|
||||
} else {
|
||||
if task.FinishedJobCount+task.FailedJobCount < task.TotalJobCount {
|
||||
taskErr = ErrTaskIsCanceled
|
||||
task.Status = TaskStatusCanceled
|
||||
} else {
|
||||
task.Status = TaskStatusFinished
|
||||
}
|
||||
}
|
||||
if taskErr != nil {
|
||||
task.OriginalErr = taskErr
|
||||
task.Err = NewTaskError(task.Name, taskErr)
|
||||
} else {
|
||||
if len(task.batchErrList) > 0 {
|
||||
task.OriginalErr = task.batchErrList[0]
|
||||
}
|
||||
task.Err = task.buildTaskErrFromBatchErrList()
|
||||
}
|
||||
task.Result = taskResult
|
||||
task.TerminatedAt = time.Now()
|
||||
task.mainErr = taskErr
|
||||
task.locker.Unlock()
|
||||
globals.SugarLogger.Debugf("ParallelTask.Run %s, err:%v", task.Name, task.Err)
|
||||
|
||||
close(task.subFinishChan)
|
||||
task.jobList = nil // 如果不释放,任务被管理的话,会导致内存不能释放
|
||||
|
||||
Reference in New Issue
Block a user