[Odin] Need help on IO-multiplexing

I’m trying to implement Redis concurrency with IO-multiplexing, and I feel I’m losing it… Before that all my parse functions were like parse_int :: proc(r: io.Reader) -> (int, Error) and parse_bulk_string :: proc(r: io.Reader) -> (string, Error) (I’m using odin-lang).

But now everything exploded with callbacks, and also I feel like I need to implement some clever async scanner (because I don’t want to queue a callback on every read_byte).

Is there any good resources where I can learn how things done correctly in this area?