7 Jun
2010
7 Jun
'10
11:03 a.m.
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.
Why is it more zombie, than a fresh "unopened" socket?
Also, the destructor guarantees to cancel any pending asynchronous operation AFAIK.
As far as I can see, it doesn't. shutdown() does.