Hello, Referring to the boost::asio "Serialization" example, and specifically to the file connection.hpp which handles serialization over sockets: http://www.boost.org/doc/libs/1_37_0/doc/html/boost_asio/example/serializati... When new data is to be received, first the message header is read, which contains the number of bytes for the body. Storage must be allocated to receive the body, and is then passed into ::read as boost::asio::buffer. For the purpose of using Serialize, it must then be converted to an std::istream, (in the example above, istringstream). As shown in the example, this requires an extra copy to be held in memory for the std::string. What's the best route to avoid this copy? Thanks, Dan Eaton Software Developer Acceleware Corp. (TSX-V:AXE) www.acceleware.comhttp://www.acceleware.com/ Phone: +1.403.249.9099 Ext.295 Fax: +1.403.249.9881 Email: daniel.eaton@acceleware.commailto:daniel.eaton@acceleware.com Get superpowered! Acceleware gets your products to market faster, better and stronger! This e-mail may contain information that is privileged and confidential and subject to legal restrictions and penalties regarding its unauthorized disclosure or use. You are prohibited from copying, distributing or otherwise using this information if you are not the intended recipient. If you have received this e-mail in error, please notify us immediately by return e-mail and delete this e-mail and its attachments from your system. Thank you. (c) 2008 Acceleware, Inc. All Rights Reserved