@@ -17,8 +17,8 @@ const (
1717)
1818
1919const (
20- TaskType_Loop = "loop"
21- TaskType_Cron = "cron"
20+ TaskType_Loop = "loop"
21+ TaskType_Cron = "cron"
2222 TaskType_Queue = "queue"
2323)
2424
4040 Reset (conf * TaskConfig ) error
4141 }
4242
43-
44-
4543 ExceptionHandleFunc func (* TaskContext , error )
4644
4745 //task 容器
@@ -127,6 +125,13 @@ func (service *TaskService) LoadConfig(configFile string, confType ...interface{
127125 } else {
128126 service .Logger ().Debug ("CreateLoopTask success [" + fmt .Sprint (v ) + "]" )
129127 }
128+ } else if v .TaskType == TaskType_Queue && v .Interval > 0 {
129+ _ , err := service .CreateQueueTask (v .TaskID , v .IsRun , v .Interval , handler , v , v .QueueSize )
130+ if err != nil {
131+ service .Logger ().Warn ("CreateQueueTask failed [" + err .Error () + "] [" + fmt .Sprint (v ) + "]" )
132+ } else {
133+ service .Logger ().Debug ("CreateQueueTask success [" + fmt .Sprint (v ) + "]" )
134+ }
130135 } else {
131136 service .Logger ().Warn ("CreateTask failed not match config [" + fmt .Sprint (v ) + "]" )
132137 }
@@ -226,7 +231,7 @@ func (service *TaskService) CreateLoopTask(taskID string, isRun bool, dueTime in
226231}
227232
228233// CreateQueueTask create new queuetask
229- func (service * TaskService ) CreateQueueTask (taskID string , isRun bool , interval int64 , handler TaskHandle , taskData interface {}, queueSize int ) (Task , error ){
234+ func (service * TaskService ) CreateQueueTask (taskID string , isRun bool , interval int64 , handler TaskHandle , taskData interface {}, queueSize int64 ) (Task , error ) {
230235 context := new (TaskContext )
231236 context .TaskID = taskID
232237 context .TaskData = taskData
@@ -246,8 +251,6 @@ func (service *TaskService) CreateQueueTask(taskID string, isRun bool, interval
246251 return task , nil
247252}
248253
249-
250-
251254// GetTask get TaskInfo by TaskID
252255func (service * TaskService ) GetTask (taskID string ) (t Task , exists bool ) {
253256 service .taskMutex .RLock ()
@@ -288,13 +291,11 @@ func (service *TaskService) PrintAllCronTask() string {
288291 return body
289292}
290293
291-
292294// GetAllTasks get all tasks
293295func (service * TaskService ) GetAllTasks () map [string ]Task {
294296 return service .taskMap
295297}
296298
297-
298299// RemoveAllTask remove all task
299300func (service * TaskService ) RemoveAllTask () {
300301 service .StopAllTask ()
0 commit comments