summaryrefslogtreecommitdiff
path: root/internal/eventloop.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-03-08 08:55:06 +0200
committerPaul Buetow <paul@buetow.org>2026-03-08 08:55:06 +0200
commit9950c77981ce06be34e877a6729abb23a36789c6 (patch)
tree778c4f32c27740f86810cb052146df97b20cea9e /internal/eventloop.go
parentdc20240d2eddacba8a690a75547cbd8f1d3df98e (diff)
task(ior): remove eventloop busy-wait polling (task 2b8f8f83)
Diffstat (limited to 'internal/eventloop.go')
-rw-r--r--internal/eventloop.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/internal/eventloop.go b/internal/eventloop.go
index 479ac59..64c7d6f 100644
--- a/internal/eventloop.go
+++ b/internal/eventloop.go
@@ -8,6 +8,7 @@ import (
"os"
"path/filepath"
"reflect"
+ "runtime"
"sync"
"syscall"
"time"
@@ -407,11 +408,12 @@ func (e *eventLoop) events(ctx context.Context, rawCh <-chan []byte) <-chan *eve
continue
}
e.processRawEvent(raw, ch)
+ // Yield so downstream consumers can process emitted pairs before
+ // the next raw event mutates shared tracker state.
+ runtime.Gosched()
case <-ctx.Done():
fmt.Println("Stopping event loop")
return
- default:
- time.Sleep(time.Millisecond * 10)
}
}
}()