
Arkadiy: Thus serving the same connection from different threads? I just don't happen to like how this would impact the processing algorithm...
Arkadiy, If you want to debate this point, I think you should argue in terms of an app that combines async only sockets with sync only sockets, which I believe is a real world use case for asio. Then the question should be, "should the sync only sockets take a demuxer?" I think that's a valid question, but it is being lost in the fact that your example isn't the intended use of asio. I do think that Arkadily has a point. For better or worse, much of the programming world has been trained to think about sockets synchronously, and eventually boost/C++ should address this. When that happens it would be nice to use the same fundamental types presented in asio, and these users shouldn't have to know about demuxers. I just want to point out that async reading and writing could be a function of an async I/O demuxer and not the socket itself. The socket could be passed to the demuxer and not vice versa. Sincerely, Christopher