Yes.
It's single-threaded, so coroutine locks are trivial and other locks "can't block" (against coroutines, anyway).
Sort of. They enable non-blocking network IO. Disk IO in unix always blocks (aio excepted). Disk IO in Windows can by async, but not via select or poll.
I can imagine it being nice if you're tied to existing C code. Or if you want C-style memory management.
Yes.
It's single-threaded, so coroutine locks are trivial and other locks "can't block" (against coroutines, anyway).
Sort of. They enable non-blocking network IO. Disk IO in unix always blocks (aio excepted). Disk IO in Windows can by async, but not via select or poll.
I can imagine it being nice if you're tied to existing C code. Or if you want C-style memory management.