(maxWorker int, updateID ...func(*K))
| 131 | } |
| 132 | |
| 133 | func NewTaskManager[K comparable](maxWorker int, updateID ...func(*K)) *Manager[K] { |
| 134 | tm := &Manager[K]{ |
| 135 | tasks: generic_sync.MapOf[K, *Task[K]]{}, |
| 136 | workerC: make(chan struct{}, maxWorker), |
| 137 | } |
| 138 | for i := 0; i < maxWorker; i++ { |
| 139 | tm.workerC <- struct{}{} |
| 140 | } |
| 141 | if len(updateID) > 0 { |
| 142 | tm.updateID = updateID[0] |
| 143 | } |
| 144 | return tm |
| 145 | } |
no outgoing calls