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

模拟服务器

开发平台:

C/C++

  1. // SockThread.h: interface for the CSockThread class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_SOCKTHREAD_H__71A87FDA_23D2_46AF_B66C_92ECB2977F6C__INCLUDED_)
  5. #define AFX_SOCKTHREAD_H__71A87FDA_23D2_46AF_B66C_92ECB2977F6C__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "KThread.h"
  10. class CSockThread : public KThread  
  11. {
  12. public:
  13. CSockThread();
  14. virtual ~CSockThread();
  15. protected:
  16. virtual DWORD Main(LPVOID lpParam);
  17. protected:
  18. virtual void EnterLoop() {}
  19. virtual void LeaveLoop() {}
  20. virtual void PrepareSock() {}
  21. virtual void UnprepareSock() {}
  22. public:
  23. virtual BOOL Stop();
  24. virtual HANDLE Start();
  25. private:
  26. enum {
  27. step_NONE,
  28. step_EnterLoop,
  29. step_PrepareSock,
  30. step_RelayCenter, 
  31. step_RelayServer,
  32. step_RootCenter,
  33. step_GatewayCenter,
  34. step_HostServer,
  35. step_TongServer,
  36. step_ChatServer,
  37. step_UnprepareSock,
  38. step_LeaveLoop,
  39. step_Sleep,
  40. } m_step;
  41. DWORD m_cntLoop;
  42. DWORD m_tickLoop;
  43. public:
  44. BOOL TraceInfo();
  45. };
  46. #endif // !defined(AFX_SOCKTHREAD_H__71A87FDA_23D2_46AF_B66C_92ECB2977F6C__INCLUDED_)