Skip to content

Commit 00116fa

Browse files
committed
#### Version 0.9.11
* bugfix: add 'StopTask' logic to RemoveTask to fix exceptions where the task cannot be GC after removal * Thanks to @aixinaxc for #12 * 2023-04-16 13:00 at ShangHai
1 parent 6e00b3d commit 00116fa

File tree

4 files changed

+18
-3
lines changed

4 files changed

+18
-3
lines changed

constant.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package task
22

33
const (
4-
packageVersion = "0.9.10"
4+
packageVersion = "0.9.11"
55
)
66

77
const (

example/normal/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,9 @@ func main() {
7777
}
7878
}
7979

80-
time.Sleep(time.Second * 20)
80+
time.Sleep(time.Second * 10)
8181

82+
service.RemoveTask("testloop")
8283
fmt.Println(service.PrintAllTaskCounterInfo())
8384
fmt.Println(service.GetAllTaskCountInfo())
8485

tasks.go

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,15 @@ func (service *TaskService) AddTask(t Task) {
270270

271271
// RemoveTask remove task by taskid
272272
func (service *TaskService) RemoveTask(taskID string) {
273+
//1.stop task running
274+
t, isExists := service.GetTask(taskID)
275+
if !isExists {
276+
return
277+
}
278+
t.Stop()
279+
service.Logger().Info(fmt.Sprint("Task:RemoveTask::StopTask => ", taskID))
280+
281+
//2.delete task from taskMap
273282
service.taskMutex.Lock()
274283
delete(service.taskMap, taskID)
275284
service.taskMutex.Unlock()
@@ -338,8 +347,8 @@ func (service *TaskService) RemoveAllTask() {
338347
func (service *TaskService) StopAllTask() {
339348
service.Logger().Info("Task:StopAllTask begin...")
340349
for _, v := range service.taskMap {
341-
service.Logger().Info(fmt.Sprint("Task:StopAllTask::StopTask => ", v.TaskID()))
342350
v.Stop()
351+
service.Logger().Info(fmt.Sprint("Task:StopAllTask::StopTask => ", v.TaskID()))
343352
}
344353
service.Logger().Info("Task:StopAllTask end[" + string(len(service.taskMap)) + "]")
345354
}

version.MD

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
## devfeel/dottask
22

3+
#### Version 0.9.11
4+
* bugfix: add 'StopTask' logic to RemoveTask to fix exceptions where the task cannot be GC after removal
5+
* Thanks to @aixinaxc for #12
6+
* 2023-04-16 13:00 at ShangHai
7+
38
#### Version 0.9.10
49
* feature: add LICENSE file for issue #10, thanks to @katsusan.
510
* feature: add PackageVersion use to return packageVersion info

0 commit comments

Comments
 (0)