aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2018-01-10 08:35:26 -0500
committerDrew DeVault <sir@cmpwn.com>2018-01-10 08:37:09 -0500
commit305446abfd66e85fe2c46cb4a07a3abb9fa809a4 (patch)
tree9cb8421a4f6a7efaa87d7bb3cbadc8d2ddf9e346
parentb5d5e0dbedee34bd5d3edf13616f055d4f227d36 (diff)
Sleep main and worker loops on idle
-rw-r--r--cmd/aerc/main.go6
-rw-r--r--worker/imap/worker.go3
2 files changed, 8 insertions, 1 deletions
diff --git a/cmd/aerc/main.go b/cmd/aerc/main.go
index d5d0897..845d176 100644
--- a/cmd/aerc/main.go
+++ b/cmd/aerc/main.go
@@ -2,6 +2,7 @@ package main
import (
"fmt"
+ "time"
"git.sr.ht/~sircmpwn/aerc2/config"
"git.sr.ht/~sircmpwn/aerc2/worker"
@@ -28,10 +29,15 @@ func main() {
workers = append(workers, work)
}
for {
+ activity := false
for _, worker := range workers {
if msg := worker.GetMessage(); msg != nil {
+ activity = true
fmt.Printf("<- %T\n", msg)
}
}
+ if !activity {
+ time.Sleep(100 * time.Millisecond)
+ }
}
}
diff --git a/worker/imap/worker.go b/worker/imap/worker.go
index 97cd4b0..7525da5 100644
--- a/worker/imap/worker.go
+++ b/worker/imap/worker.go
@@ -4,6 +4,7 @@ import (
"git.sr.ht/~sircmpwn/aerc2/worker/types"
"fmt"
+ "time"
)
type IMAPWorker struct {
@@ -52,7 +53,7 @@ func (w *IMAPWorker) Run() {
fmt.Printf("<= %T\n", msg)
w.handleMessage(msg)
default:
- // no-op
+ time.Sleep(100 * time.Millisecond)
}
}
}