Michael McCormack mccormac@aals27.alcatel.com.au writes:
This patch moves responsibility for asynchronous I/O to the client process. i'm posting it to wine-devel because i want to know what other developers here think about the technique i've used to make this work...
Your approach is not going to work with the latest changes I made to the server. The good news is that the changes I'm making are in part to allow making server calls in signal handlers, so when this works you should be able to use SIGIO to do async IO.
i think this implementation is more efficient, as it makes fewer server calls and duplicates fewer file descriptors, while maintaining correctness.
It's not clear to me that it is more efficient; it seems it will do a lot more work on every single server call if an async IO is pending. Of course the only way to tell is to run benchmarks.