summaryrefslogtreecommitdiff
path: root/workers.go
diff options
context:
space:
mode:
Diffstat (limited to 'workers.go')
-rw-r--r--workers.go15
1 files changed, 11 insertions, 4 deletions
diff --git a/workers.go b/workers.go
index 6fa4835..03c9072 100644
--- a/workers.go
+++ b/workers.go
@@ -2,15 +2,22 @@ package main
import "fmt"
-func worker(queue chan *Utterance, worknumber int, geshaft chan *Utterance) {
+func worker(queue chan *Utterance, done chan bool, worknumber int, geshaft chan *Utterance) {
for {
if len(queue) == 0 {
fmt.Println("empty queue, number", worknumber)
return
}
- ut := <-queue
- if err := cutoutClipAndTranscode(ut); err == nil {
- geshaft <- ut
+ select {
+
+ case ut := <-queue:
+ if err := cutoutClipAndTranscode(ut); err == nil {
+ geshaft <- ut
+ }
+
+ case <-done:
+ fmt.Println("done signal, number", worknumber)
+ return
}
}
}