kdbprocessthread.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:2k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma once
  2. //using namespace std;
  3. //#include <list>
  4. #include "KRoleInfomation.h"
  5. #include "KRoleDBServer.h"
  6. #include "windows.h"
  7. #include "....HeadersKProtocolDef.h"
  8. #include "S3DBInterface.h"
  9. #include "CriticalSection.h"
  10. using OnlineGameLib::Win32::CCriticalSection;
  11. extern OnlineGameLib::Win32::CCriticalSection g_RoleInfoMutex;
  12. extern OnlineGameLib::Win32::CCriticalSection g_RoleInfoSetMutex;
  13. //extern OnlineGameLib::Win32::CCriticalSection g_RoleInfoMapMutex;
  14. extern OnlineGameLib::Win32::CCriticalSection g_MainMsgListMutex;
  15. extern OnlineGameLib::Win32::CCriticalSection g_NetMsgListMutex;
  16. extern OnlineGameLib::Win32::CCriticalSection g_GetRoleInfoMutex;
  17. //extern OnlineGameLib::Win32::CCriticalSection g_NetEventMutex;
  18. extern DWORD g_dwPerSaveTime;//每次存档的时间
  19. extern DWORD g_dwMaxUnModifyTime;
  20. extern list<TCmd*> g_MainThreadCmdList;
  21. extern list<TGetRoleInfoFromDB*> g_DBLoadThreadCmdList;
  22. extern list<TCmd*> g_NetServiceThreadCmdList;
  23. extern RoleDBServer::KNetServer g_NetServer;
  24. extern DWORD WINAPI RoleServerMainThreadFun(void * pParam);
  25. extern DWORD WINAPI DatabaseLoadThreadFun(void * pParam);
  26. extern DWORD WINAPI DatabaseSaveThreadFun(void *);
  27. extern int InitServer();
  28. extern DWORD ReleaseServer();
  29. extern DWORD WINAPI RoleNetWorkServiceThreadFun(void * pParam);
  30. extern char * GetRoleNameFromRoleBuffer(char * pRoleBuffer);
  31. #define MAX_MARK_COUNT 100
  32. #define SAVEMARK_NO 10
  33. #define REMOVEMARK_NO 30
  34. #define LOADMARK_NO 20
  35. extern unsigned char g_LoadDBThreadMark;
  36. extern unsigned char g_SaveDBThreadMark;
  37. extern unsigned char g_NetServerMark;
  38. extern unsigned char g_MainLoopMark;
  39. extern size_t g_dwRecvLen;
  40. extern size_t g_dwSendLen;
  41. extern int  g_nMistakeCount;
  42. extern char g_SaveMarkString[200];
  43. extern char g_RemoveMarkString[200];
  44. extern char g_LoadMarkString[200];
  45. #define MARK '.'
  46. #define MARK1 0
  47. //'+'
  48. #define MARK2 0
  49. //'-'
  50. struct TThreadData
  51. {
  52. DWORD dwThreadId;
  53. HANDLE hThread;
  54. };
  55. enum
  56. {
  57. LoadDBThread,
  58. SaveDBThread,
  59. NetService,
  60. MainMsgLoop,
  61. };
  62. extern TThreadData g_ThreadData[4];