7 Jun
2010
7 Jun
'10
10:26 a.m.
On Mon, Jun 7, 2010 at 7:17 AM, Igor R
You would destroy the socket. Delete'ing it,
So it would be always necessary to store a ptr to a socket? Then delete the socket, which was passed by reference to async_read()? Doesn't sound good, does it?
I see. You would call cancel first. Unfortunately cancelling is not very reliable. But cancelling is what is conceptually right here IMHO.
or using a boost::optional.
But it's not optional, according to its semantics...
It seems to me. If you call close you want the socket released. That a zombie socket remains is a design problem. Zombie objects should be avoided. I don't think it can be implementable without unnecessary overhead though. Regards, -- Felipe Magno de Almeida