private void SendMsgCallBack(IAsyncResult ar) { Socket socket = (Socket)ar.AsyncState; try { int length = socket.EndSend(ar); if (m_Handler != null) { m_Handler.OnChannelSent(this, length); } } catch (ObjectDisposedException) { return; } catch (Exception e) { if (m_Handler != null) { m_Handler.OnExceptionCaught(this, e); } isClose = true; } CheckSendQueue(); }