feat: std/net/kqueue — raw kqueue/kevent bindings, darwin (PLAN-HTTPZ S3)
32-byte darwin struct kevent, EVFILT_READ/WRITE/TIMER, EV_* flags, and three thin helpers: kev_change (one registration entry), kq_apply (immediate change, no drain), kq_wait (bounded drain, EINTR reissued, negative timeout = forever). Off the std.sx barrel by design — the OS-neutral facade over this and the epoll twin is std.event (S5). examples/1631 pins zero-cost idle timeout, READ readiness with pending byte count + udata round-trip, and EV_EOF on peer close; verified under sx run AND sx build.
This commit is contained in:
1
examples/expected/1631-net-kqueue.exit
Normal file
1
examples/expected/1631-net-kqueue.exit
Normal file
@@ -0,0 +1 @@
|
||||
0
|
||||
0
examples/expected/1631-net-kqueue.stderr
Normal file
0
examples/expected/1631-net-kqueue.stderr
Normal file
4
examples/expected/1631-net-kqueue.stdout
Normal file
4
examples/expected/1631-net-kqueue.stdout
Normal file
@@ -0,0 +1,4 @@
|
||||
idle wait: timeout, 0 events
|
||||
after write: READ ready, 4 pending, udata 7777
|
||||
after close: EV_EOF
|
||||
kqueue ok
|
||||
Reference in New Issue
Block a user