首页 > 代码库 > GS与网络打交道

GS与网络打交道

与网络打交道在GS,GC,Share都与网络打交道,但还是GC最多GC打交道过程send_stat BaseChannel::SendCmdTry(){    if (!m_queCmd.size())        return send_stat::send_succeed;    for(;;)    {        if (m_queCmd.empty())            break;        DataPkt pkt = m_queCmd.front();        {            send_stat hr = m_pDataLayer->SendData(m_nChannelId, pkt.pData, pkt.nSize);//GC与网络打交道倒也没什么            if(hr != send_stat::send_succeed)            {                //放入等待队列,让GS来发送                m_pShare->PushGcWait(m_nChannelId);                return hr;            }        }        m_queCmd.pop();        m_pShare->PushPkt(pkt.pData, pkt.nSize);    }    return send_stat::send_succeed;}share:void Share::OnTurnToClient(int nChannelId, void* pData, int nLen){    m_pDataLayer->SendData(nChannelId, pData, nLen);//share这层还不知道什么意思}gs:GS这边与网络打交道其实不多,就是固定的几处m_spDataLayer->Close(nChannelId);//踢玩家下线GetBufferNum()//获取缓冲包的数量

 

GS与网络打交道