> What I'd like to know is, what does the statement "as long as you only care > about non-Windows platforms" from asyncnet really mean?
@Monster, It means that the layers for implementing asyncnet which consist of selectors module, asyncdispatch, etc can be used interchangeably, perhaps you want to use kqueue instead of epoll for the selectors, you can do that. The different for Windows that windows has no independent loop dispatcher and it's already available on win 32 api as IOCP (I/O Completion Port), hence when in Windows you can only use what's given on asyncdispatch. I think libuv (or libev? I forget which) actually is a wrapper for calling those native api, on Windows using IOCP, on Linux using epoll, and it's same with asyncdispatch. On Windows, you can take it different approach with coroutines, which the implementation on Windows using native API, Fiber. However using IOCP is certainly easier and maybe somehow more optimized instead of implementing our own. @yglukhov, could you give some simple pointer the approach you took for implementing asyncSpawn ?
