Skip to content

Commit 511299b

Browse files
committed
progressAsWriter example with nop bar
1 parent e915e3c commit 511299b

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

_examples/progressAsWriter/main.go

+10-9
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,13 @@ import (
1313

1414
func main() {
1515
total, numBars := 100, 2
16-
var wg sync.WaitGroup
17-
wg.Add(numBars)
16+
var bwg sync.WaitGroup
17+
bwg.Add(numBars)
1818
done := make(chan interface{})
19-
p := mpb.New(
20-
mpb.WithWidth(64),
21-
mpb.WithWaitGroup(&wg),
22-
mpb.WithShutdownNotifier(done),
23-
)
19+
p := mpb.New(mpb.WithWidth(64), mpb.WithShutdownNotifier(done))
2420

2521
log.SetOutput(p)
22+
nopBar := p.MustAdd(0, nil)
2623

2724
for i := 0; i < numBars; i++ {
2825
name := fmt.Sprintf("Bar#%d:", i)
@@ -39,7 +36,7 @@ func main() {
3936
)
4037
// simulating some work
4138
go func() {
42-
defer wg.Done()
39+
defer bwg.Done()
4340
rng := rand.New(rand.NewSource(time.Now().UnixNano()))
4441
max := 100 * time.Millisecond
4542
for i := 0; i < total; i++ {
@@ -67,12 +64,16 @@ func main() {
6764
break quit
6865
default:
6966
log.Println("waiting for done")
70-
time.Sleep(100 * time.Millisecond)
67+
time.Sleep(150 * time.Millisecond)
7168
}
7269
}
7370
qwg.Done()
7471
}()
7572

73+
bwg.Wait()
74+
log.Println("completing nop bar")
75+
nopBar.EnableTriggerComplete()
76+
7677
p.Wait()
7778
qwg.Wait()
7879
}

0 commit comments

Comments
 (0)