Sleep main and worker loops on idle
This commit is contained in:
parent
b5d5e0dbed
commit
305446abfd
|
@ -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)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue