查看: 257|回复: 1

网狐棋牌(三) 调度引擎初步分析(2)

[复制链接]

7

主题

34

帖子

199

积分

vip会员

Rank: 1

积分
199
发表于 2020-3-27 16:10:20 | 显示全部楼层 |阅读模式
看看CAttemperEngine中处理数据的代码:

1 网狐棋牌(三) 调度引擎初步分析(2) // 队列接口
2 网狐棋牌(三) 调度引擎初步分析(2) void __cdecl CAttemperEngine::OnQueueServiceSink(WORD wIdentifier,  void * pBuffer, WORD wDataSize, DWORD dwInsertTime)
3 网狐棋牌(三) 调度引擎初步分析(2) {
4网狐棋牌(三) 调度引擎初步分析(2)    //内核事件
5网狐棋牌(三) 调度引擎初步分析(2)    ASSERT(m_pIAttemperEngineSink!=NULL);
6网狐棋牌(三) 调度引擎初步分析(2)    switch (wIdentifier)
7网狐棋牌(三) 调度引擎初步分析(2)    {
8网狐棋牌(三) 调度引擎初步分析(2)    case EVENT_TIMER:            //定时器事件
9网狐棋牌(三) 调度引擎初步分析(2)        {
10网狐棋牌(三) 调度引擎初步分析(2)            //效验参数
11网狐棋牌(三) 调度引擎初步分析(2)            ASSERT(wDataSize==sizeof(NTY_TimerEvent));
12网狐棋牌(三) 调度引擎初步分析(2)            if (wDataSize!=sizeof(NTY_TimerEvent)) return;
13网狐棋牌(三) 调度引擎初步分析(2)
14网狐棋牌(三) 调度引擎初步分析(2)            //处理消息
15网狐棋牌(三) 调度引擎初步分析(2)            NTY_TimerEvent * pTimerEvent=(NTY_TimerEvent *)pBuffer;
16网狐棋牌(三) 调度引擎初步分析(2)            m_pIAttemperEngineSink->OnEventTimer(pTimerEvent->wTimerID,pTimerEvent->wBindParam);
17网狐棋牌(三) 调度引擎初步分析(2)
18网狐棋牌(三) 调度引擎初步分析(2)            return;
19网狐棋牌(三) 调度引擎初步分析(2)        }
20网狐棋牌(三) 调度引擎初步分析(2)    case EVENT_DATABASE:        //数据库事件
21网狐棋牌(三) 调度引擎初步分析(2)        {
22网狐棋牌(三) 调度引擎初步分析(2)            //效验参数
23网狐棋牌(三) 调度引擎初步分析(2)            ASSERT(wDataSize>=sizeof(NTY_DataBaseEvent));
24网狐棋牌(三) 调度引擎初步分析(2)            if (wDataSize<sizeof(NTY_DataBaseEvent)) return;
25网狐棋牌(三) 调度引擎初步分析(2)
26网狐棋牌(三) 调度引擎初步分析(2)            //处理消息
27网狐棋牌(三) 调度引擎初步分析(2)            NTY_DataBaseEvent * pDataBaseEvent=(NTY_DataBaseEvent *)pBuffer;
28网狐棋牌(三) 调度引擎初步分析(2)            m_pIAttemperEngineSink->OnEventDataBase(pDataBaseEvent+1,wDataSize-sizeof(NTY_DataBaseEvent),pDataBaseEvent);
29网狐棋牌(三) 调度引擎初步分析(2)
30网狐棋牌(三) 调度引擎初步分析(2)            return;
31网狐棋牌(三) 调度引擎初步分析(2)        }
32网狐棋牌(三) 调度引擎初步分析(2)    case EVENT_SOCKET_ACCEPT:    //网络应答事件
33网狐棋牌(三) 调度引擎初步分析(2)        {
34网狐棋牌(三) 调度引擎初步分析(2)            //效验大小
35网狐棋牌(三) 调度引擎初步分析(2)            ASSERT(wDataSize==sizeof(NTY_SocketAcceptEvent));
36网狐棋牌(三) 调度引擎初步分析(2)            if (wDataSize!=sizeof(NTY_SocketAcceptEvent)) return;
37网狐棋牌(三) 调度引擎初步分析(2)
38网狐棋牌(三) 调度引擎初步分析(2)            //处理消息
39网狐棋牌(三) 调度引擎初步分析(2)            NTY_SocketAcceptEvent * pSocketAcceptEvent=(NTY_SocketAcceptEvent *)pBuffer;
40网狐棋牌(三) 调度引擎初步分析(2)            m_pIAttemperEngineSink->OnEventSocketAccept(pSocketAcceptEvent);
41网狐棋牌(三) 调度引擎初步分析(2)
42网狐棋牌(三) 调度引擎初步分析(2)            return;
43网狐棋牌(三) 调度引擎初步分析(2)        }
44网狐棋牌(三) 调度引擎初步分析(2)    case EVENT_SOCKET_READ:        //网络读取事件
45网狐棋牌(三) 调度引擎初步分析(2)        {
46网狐棋牌(三) 调度引擎初步分析(2)            //效验大小
47网狐棋牌(三) 调度引擎初步分析(2)            NTY_SocketReadEvent * pSocketReadEvent=(NTY_SocketReadEvent *)pBuffer;
48网狐棋牌(三) 调度引擎初步分析(2)            ASSERT(wDataSize>=sizeof(NTY_SocketReadEvent));
49网狐棋牌(三) 调度引擎初步分析(2)            ASSERT(wDataSize==(sizeof(NTY_SocketReadEvent)+pSocketReadEvent->wDataSize));
50网狐棋牌(三) 调度引擎初步分析(2)            if (wDataSize<sizeof(NTY_SocketReadEvent)) return;
51网狐棋牌(三) 调度引擎初步分析(2)            if (wDataSize!=(sizeof(NTY_SocketReadEvent)+pSocketReadEvent->wDataSize)) return;
52网狐棋牌(三) 调度引擎初步分析(2)
53网狐棋牌(三) 调度引擎初步分析(2)            //处理消息
54网狐棋牌(三) 调度引擎初步分析(2)            bool bSuccess=false;
55网狐棋牌(三) 调度引擎初步分析(2)            try
56网狐棋牌(三) 调度引擎初步分析(2)            {
57网狐棋牌(三) 调度引擎初步分析(2)                bSuccess=m_pIAttemperEngineSink->OnEventSocketRead(pSocketReadEvent->Command,pSocketReadEvent+1,pSocketReadEvent->wDataSize,pSocketReadEvent);
58网狐棋牌(三) 调度引擎初步分析(2)            }
59网狐棋牌(三) 调度引擎初步分析(2)            catch (网狐棋牌(三) 调度引擎初步分析(2))    { }
60网狐棋牌(三) 调度引擎初步分析(2)            if (bSuccess==false) m_pITCPSocketEngine->CloseSocket(pSocketReadEvent->wIndex,pSocketReadEvent->wRoundID);
61网狐棋牌(三) 调度引擎初步分析(2)
62网狐棋牌(三) 调度引擎初步分析(2)            return;
63网狐棋牌(三) 调度引擎初步分析(2)        }
64网狐棋牌(三) 调度引擎初步分析(2)    case EVENT_SOCKET_CLOSE:    //网络关闭事件
65网狐棋牌(三) 调度引擎初步分析(2)        {
66网狐棋牌(三) 调度引擎初步分析(2)            //效验大小
67网狐棋牌(三) 调度引擎初步分析(2)            ASSERT(wDataSize==sizeof(NTY_SocketCloseEvent));
68网狐棋牌(三) 调度引擎初步分析(2)            if (wDataSize!=sizeof(NTY_SocketCloseEvent)) return;
69网狐棋牌(三) 调度引擎初步分析(2)
70网狐棋牌(三) 调度引擎初步分析(2)            //处理消息
71网狐棋牌(三) 调度引擎初步分析(2)            NTY_SocketCloseEvent * pSocketCloseEvent=(NTY_SocketCloseEvent *)pBuffer;
72网狐棋牌(三) 调度引擎初步分析(2)            m_pIAttemperEngineSink->OnEventSocketClose(pSocketCloseEvent);
73网狐棋牌(三) 调度引擎初步分析(2)
74网狐棋牌(三) 调度引擎初步分析(2)            return;
75网狐棋牌(三) 调度引擎初步分析(2)        }
76网狐棋牌(三) 调度引擎初步分析(2)    }
77网狐棋牌(三) 调度引擎初步分析(2)
78网狐棋牌(三) 调度引擎初步分析(2)    //其他事件
79网狐棋牌(三) 调度引擎初步分析(2)    m_pIAttemperEngineSink->OnAttemperEvent(wIdentifier,pBuffer,wDataSize,dwInsertTime);
80网狐棋牌(三) 调度引擎初步分析(2)
81网狐棋牌(三) 调度引擎初步分析(2)    return;
82网狐棋牌(三) 调度引擎初步分析(2)}



回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部