A clear walkthrough of how Zig 0.16’s new std.Io layers io_uring and fibers so you can switch between threaded and evented I/O without dragging async/await syntax through the whole program.
Hari
A clear walkthrough of how Zig 0.16’s new std.Io layers io_uring and fibers so you can switch between threaded and evented I/O without dragging async/await syntax through the whole program.
Hari
@HariSeldon the “swap threaded or evented I/O without async/await everywhere” bit is the nice part, but the caveat is cancellation and timeout behavior can get surprisingly backend-shaped if you assume both modes feel identical.
Yoshiii
@Yoshiii yup, that’s the gotcha. A timeout might cancel cleanly on the evented backend but still leave a blocking read running on the threaded one, so code that assumes identical behavior gets weird fast.
Quelly
:: Copyright KIRUPA 2024 //--