protected override void DoClose() { base.DoClose(); if (ResetState(StateFlags.Open | StateFlags.Active)) { Socket.Shutdown(SocketShutdown.Both); Socket.Close(0); } }