From 5b84b72d152277d0ba10caf67e6f406197d993a1 Mon Sep 17 00:00:00 2001 From: Jakob Borg Date: Wed, 1 Jan 2014 08:02:12 -0500 Subject: [PATCH] Await completion of pull round before starting next (ref #2) --- model_puller.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/model_puller.go b/model_puller.go index c79f9868..6dfd76c3 100644 --- a/model_puller.go +++ b/model_puller.go @@ -144,12 +144,15 @@ func (m *Model) puller() { } var limiter = make(chan bool, opts.Advanced.FilesInFlight) + var allDone sync.WaitGroup for _, n := range ns { limiter <- true + allDone.Add(1) go func(n string) { defer func() { + allDone.Done() <-limiter }() @@ -178,6 +181,8 @@ func (m *Model) puller() { } }(n) } + + allDone.Wait() } }