prevent resource leak (#1080)
This commit is contained in:
parent
4e2339749c
commit
31362bc331
@ -99,14 +99,22 @@ func (t *Task) Run(c task.Command) error {
|
|||||||
|
|
||||||
// subscribe for the pool size
|
// subscribe for the pool size
|
||||||
for i := 0; i < t.Options.Pool; i++ {
|
for i := 0; i < t.Options.Pool; i++ {
|
||||||
// subscribe to work
|
err := func() error {
|
||||||
subWork, err := t.Broker.Subscribe(topic, workFn, broker.Queue(fmt.Sprintf("work.%d", i)))
|
// subscribe to work
|
||||||
|
subWork, err := t.Broker.Subscribe(topic, workFn, broker.Queue(fmt.Sprintf("work.%d", i)))
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// unsubscribe on completion
|
||||||
|
defer subWork.Unsubscribe()
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}()
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
// unsubscribe on completion
|
|
||||||
defer subWork.Unsubscribe()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// subscribe to all status messages
|
// subscribe to all status messages
|
||||||
|
Loading…
Reference in New Issue
Block a user