
On Wed, 15 Sep 2004 21:20:56 -0400, Hurd, Matthew wrote
The only exception I can think of is if the data is to be 'multicast' down 2 TCP connections...
Another exception for you:
In place messaging with a "fast message" format would be nice for support. Some network hardware, including TCP via TOE cards and infiniband and the like, support very low latency messaging, e.g. < 10 microseconds. You don't want to copy, but also you don't want to serialize. In fact, for many applications you are prepared to sacrifice architecture portability on the altar of speed and you might send a contiguous c++ object, padding from alignment and all, directly as a message block. The CPU never has to see the whole object.
Sure, but I think it is pretty rare in practice. I've seen a few network apps and none of them has needed this -- at least so far ;-) And if you are concerned enough about performance to need this, I'm wondering if you will even buy into using C++ instead of C. Jeff