1. 近日要点总结
* 开发环境
几个重要的*.dsw:auto-build-client.dsw, InfoServer.dsw, controller.dsw等等
配置文件:
ROOT/bin/dlls/Debug/conf/iwlab.ini
ROOT/bin/dlls/Debug/infowarelab.ini
日志文件只在Release状态下有作用
* WTL
必须有一个_Module
MessageLoop需要仔细研究一下
* thread与reactor
主(平台)线程类 网络线程类 主线程事件队列类 网络线程事件队列类
操作系统
Win32 CRtThreadReactor CRtThreadReactor ? CRtReactorWin32Message CRtReactorWin32AsyncSelect
Linux CRtThreadTask CRThreadReactor EventQueue CRtReactorEpoll
2. 问题汇总
Q:总结一下所有dll文件的目录及作用等等?
Q:每一个DLL都有一个_Module的定义,原理是什么?
Q:rtSpy的具体用途是什么?与rtDiagnose有任何关系吗?
Q:CConfClientView何用?
Q:ThredModule何意?
CRtThreadManager::TModule CRtThreadManager::GetNetworkThreadModule()
{
#ifdef RT_NETWORK_THREAD_SINGLE_MAIN
return TM_SINGLE_MAIN;
#else
return TM_MULTI_ONE_DEDICATED;
#endif // RT_NETWORK_THREAD_SINGLE_MAIN
}
Q:CRtReactorWin32Message和CRtReactorWin32Asyncselect
唯一区别在于OnHandleRegister的实现:
Win32Message:几乎未做任何动作,而且直接返回RT_ERROR_UNEXPECTED,是否意味着这个函数若被调用则本身就是错误?
Win32Asyncslelect:将socket fd与m_hwndNotify绑定
为什么会有这种区别?
3. 下一步计划
Creating browse info file...
BSCMAKE: warning BK4502 : truncated .SBR file '\projects-workspace\box-4.2-UCP-4.5-0429\bin\debug\objs\network\BitStream.sbr' not in ../../../bin/debug/objs/network/network.bsc
BSCMAKE: error BK1513 : nonincremental update requires all .SBR files
Error executing bscmake.exe.
rtnetwork.dll - 1 error(s), 1 warning(s)