diff options
Diffstat (limited to 'workers.go')
-rw-r--r-- | workers.go | 13 |
1 files changed, 7 insertions, 6 deletions
@@ -2,14 +2,15 @@ package main import "fmt" -func worker(queue chan *Utterance, worknumber int, done chan bool) { +func worker(queue chan *Utterance, worknumber int, geshaft chan *Utterance) { for { - select { - case ut := <-queue: - cutoutClipAndTranscode(ut) - case <-done: - fmt.Println("worker stoped, number", worknumber) + if len(queue) == 0 { + fmt.Println("empty queue, number", worknumber) return } + ut := <-queue + if err := cutoutClipAndTranscode(ut); err == nil { + geshaft <- ut + } } } |