Replies: 1 comment
-
zig-aio will provide a IO interface implementation, but will also keep the lower level API. The IO interface implementation will also give you a way to access the lower level API, so you can use the linked io_uring style operation queuing and such. Stackless coroutines are definitely something I look forward to. It's not yet clear if I throw away all the coroutine code and just use the std code for that or not. It's interesting development nevertheless. One interesting thing to note is that, while the IO interface completely abstracts away scheduling decisions for you, zig-aio lower level API is looking to go forward more in the direction where you are forced to do the scheduling decisions. #104 In theory zig-aio can also provide multiple different IO implementations just like std (blocking, thread pool, coroutine, stackless), it's not yet clear if the actual scheduler part can be reused from std, or if I have to implement these myself (highly likely for at least coroutines). |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I am reading through the proposals in zig for the new io interface that will be able to support multiple asynchronous workloads. Your library seems to already implement an event loop runtime so I am curious, would you use the generic event loop implementation that will prob be provided when the new io interface comes out? Or would you just adjust your impl to fit the interface.
On that note, I hope stackless coroutines are also figured out by then because it'd be nice to use them in embedded environments, or have it as an option in general, for cheaper tasks.
Beta Was this translation helpful? Give feedback.
All reactions