bool CConsoleHandler::SendMessage(IBuffPacket* pBuffPacket) { m_ThreadLock.acquire(); m_nIOCount++; m_ThreadLock.release(); //OUR_DEBUG((LM_DEBUG,"[CConsoleHandler::SendMessage]Connectid=%d,m_nIOCount=%d.\n", GetConnectID(), m_nIOCount)); CPacketParse PacketParse; if(NULL == pBuffPacket) { OUR_DEBUG((LM_DEBUG,"[CConsoleHandler::SendMessage] Connectid=[%d] pBuffPacket is NULL.\n", GetConnectID())); Close(); return false; } ACE_Message_Block* pMbData = NULL; int nSendLength = PacketParse.MakePacketLength(pBuffPacket->GetPacketLen()); pMbData = App_MessageBlockManager::instance()->Create(nSendLength); //这里组成返回数据包 PacketParse.MakePacket(pBuffPacket->GetData(), pBuffPacket->GetPacketLen(), pMbData); App_BuffPacketManager::instance()->Delete(pBuffPacket); PutSendPacket(pMbData); return true; }
bool CProConsoleHandle::SendMessage(IBuffPacket* pBuffPacket) { CConsolePacketParse PacketParse; if(NULL == pBuffPacket) { //OUR_DEBUG((LM_DEBUG,"[CProConsoleHandle::SendMessage] Connectid=[%d] pBuffPacket is NULL.\n", GetConnectID())); Close(); return false; } ACE_Message_Block* pMbData = NULL; int nSendLength = PacketParse.MakePacketLength(GetConnectID(), pBuffPacket->GetPacketLen()); pMbData = App_MessageBlockManager::instance()->Create(nSendLength); //这里组成返回数据包 PacketParse.MakePacket(GetConnectID(), pBuffPacket->GetData(), pBuffPacket->GetPacketLen(), pMbData); App_BuffPacketManager::instance()->Delete(pBuffPacket); PutSendPacket(pMbData); return true; }