From: Carlo Wood (carlo_at_[hidden])
Date: 2004-09-15 04:27:19
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_at_[hidden]>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk