void session_Closed(object sender, SocketSessionClosedEventArgs e) { m_MaxConnectionSemaphore.Release(); IAsyncSocketSession socketSession = sender as IAsyncSocketSession; if (socketSession != null && this.m_ReadWritePool != null) { this.m_ReadWritePool.Push(socketSession.SocketAsyncProxy); } }
void socketSession_Closed(object sender, SocketSessionClosedEventArgs e) { //the sender is a sessionID string sessionID = e.SessionID; if (string.IsNullOrEmpty(sessionID)) { return; } try { lock (m_SessionSyncRoot) { m_SessionDict.Remove(sessionID); } LogUtil.LogInfo(this, "SocketSession " + sessionID + " was closed!"); } catch (Exception exc) { LogUtil.LogError(this, exc); } }
void SocketSession_Closed(object sender, SocketSessionClosedEventArgs e) { OnClosed(); }
void session_Closed(object sender, SocketSessionClosedEventArgs e) { m_MaxConnectionSemaphore.Release(); }