Just a quick look but i have a quick question, Write method require as second param a buffer; te axample you suggested pass shared_const_buffer which does not implements any interface. I suppose the trick should be in these lines typedef boost::asio::const_buffer value_type; typedef const boost::asio::const_buffer* const_iterator; but I don't know why. Can you explain me the trick ? Thanks Matteo From: boost-users-bounces@lists.boost.org [mailto:boost-users-bounces@lists.boost.org] On Behalf Of ecyrbe Sent: sabato 10 luglio 2010 16:48 To: boost-users@lists.boost.org Subject: Re: [Boost-users] asio::async_write, how to delete data after see the reference_counted example in the boost asio documentation. It's a good start to allow dynamic buffer allocation and auto deletion when your message is delivered... 2010/7/10 Matteo Lanzi <matteo.lanzi@kaseya.com> Hi, I modified a little the echo server example and to build up a simple tcp server; basically what I do is: - Start the server in a thread - When a session is created I start async read - If my session receive a signal I write a data with async write function - Handle data written then start again async read ( otherwise the connection should be closed ) I have some specific functions which prepare packets and then invoke the write method I would like to avoid static allocation of my buffer instead of dynamic one; for doing that I supposed to use shared_array<T> I can't do that because the boost::asio::buffer, required by the write method, doesn't seem to accept smart pointer. So my questions are: - Is there a common pattern to follow for preparing data and delete them after the delivery ? - Is it possible to use smart pointers with async_write ? - Is the async_write executed in another thread ? should I have concurrency problems if I would use an unique output buffer and clear it on the handle_write callback ? Thanks Matteo _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users