public void DestroySession(SessionBase session) { if (null == session) { Logger.Error("DestroySession session == null"); return; } if (null != m_managerSAEA) { session.m_saeaReciver.UserToken = null; session.m_saeaSender.UserToken = null; // 버퍼 셋팅도 다시 해줘야 하나? 최초 BufferManager에서 할당받은 위치겠지만 m_managerSAEA.PushRecvSAEA(session.m_saeaReciver); m_managerSAEA.PushSendSAEA(session.m_saeaSender); } long id = session.GetNumber(); m_keyGenerator.Free(id); //m_managerSession.Remove(session); if (null != m_fnAddSession) { m_fnRemoveSession(session); } //session = null; Logger.Debug(string.Format("DestroySession {0}", id)); }