
Michel André wrote:
Peter Dimov wrote:
Iain Hanson wrote:> I'm not sure that you can beat the library from the client side with respect to the number of memory allocations. With N asynchronous reads active you need to keep N buffers alive. The library can manage with just one in the select case.
Should several pending reads be allowed? I have leaned back and forth on this issue in a previous platform specific async com library I wrote.
Definitely; a server that has N active connections might have up to N reads active at any time. Not on the same socket, of course. :-)
I'm fairly confident that manual buffer management will introduce even more runtime errors. ;-) (That's been my experience with async reads/writes, at least.)
Do you have any preferences as wheter to use basic_streambuf or not as the buffer interface?
I'm not sure what basic_streambuf would buy me over char[] or vector<char>.