Skip to content

Commit c055692

Browse files
committed
waitgroup is redundant
1 parent c12b8af commit c055692

File tree

1 file changed

+2
-7
lines changed
  • testdata/examples/channel/workq

1 file changed

+2
-7
lines changed

testdata/examples/channel/workq/w.go

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package workq
22

33
import (
44
"strings"
5-
"sync"
65
"sync/atomic"
76
)
87

@@ -17,9 +16,7 @@ func (w *Worker) run(
1716
total *atomic.Int64,
1817
remaining *atomic.Int64,
1918
done chan struct{},
20-
wg *sync.WaitGroup,
2119
) {
22-
defer wg.Done()
2320
for {
2421
select {
2522
case <-done:
@@ -91,14 +88,12 @@ func wordCount(docs []string) int64 {
9188
remaining.Store(int64(len(docs)))
9289
done := make(chan struct{})
9390

94-
var wg sync.WaitGroup
9591
for i, w := range workers {
96-
wg.Add(1)
9792
neighbor := workers[(i+1)%numWorkers]
98-
go w.run(neighbor, &total, &remaining, done, &wg)
93+
go w.run(neighbor, &total, &remaining, done)
9994
}
10095

101-
wg.Wait()
96+
<-done
10297
return total.Load()
10398
}
10499

0 commit comments

Comments
 (0)