
On Tue, Sep 14, 2004 at 07:56:49PM -0700, Sean Kelly wrote:
Thing is, IOCP is really the only way to do high-end i/o multiplexing in Windows. I don't think the other options would scale well to thousands of connections.
Also, I now understand that this solution is *specifically* MT. It forces the user to write an MT application because his IO handling is handled in parallel by more than one thread. This cannot be done without that the user is aware of it. IOCP could be used in a way that only one thread is actually handling the IO (that is, calling the 'callback functions' of the user) but then using IOCP makes no sense.
I disagree. IOCP makes sense any time the user expects the need to handle more than 31 simultaneous connections. Standard overlapped i/o may be fast but it doesn't scale as well as IOCP.
That would be a very interesting observation, but - what about IOCR (IO Completion Routines)? It seems to me that both have the same underlying mechanism and therefore I expect IOCR to scale equally well. -- Carlo Wood <carlo@alinoe.com>