1.ServerManager.h
/********************************************************************
File name: ServerManager.h
Author: lieyingshengbao
Version: 1.0
Date: 2012-09-28
Description: 本文件提供对服务器接口进行统一管理和封装
Others: 本类型使用C++定义
Function List: 请参见正文
History: 修改历史记录列表,每条修改记录应包括修改日期、修改者及修改内容简述
1. Date:
Author:
Modification:
2. ...
*********************************************************************/
#ifndef _SERVER_MANAGER_H_
#define _SERVER_MANAGER_H_
#include "stdafx.h"
#include "Accepter.h"
#include "MsgDispatcher.h"
#include "Public.h"
#include "APInit.h"
/*负责管理整个服务器的类*/
class ServerManager
{
public:
ServerManager();
~ServerManager();
public:
void Init();
int Run();
private:
Accepter m_Accepter; //Accepter(接收)类
CAPMsgQueue m_MsgQueue; //唯一的消息队列
MsgDispatcher m_MsgDispater; //消息分发器的类
APInit m_ApIinit; //具体的消息处理器
};
#endif
ServerManager.cpp
#include "stdafx.h"
#include "ServerManager.h"
//构造函数(初始化列表赋值)
ServerManager::ServerManager():
m_Accepter(&m_MsgQueue),
m_MsgDispater(&m_MsgQueue)
{
}
ServerManager::~ServerManager()
{
}
void ServerManager::Init()
{
//注册处理器
m_MsgDispater.RegisteProcesser(&m_ApIinit);
}
int ServerManager::Run()
{
m_Accepter.Run(); //接收器运行
m_MsgDispater.Run(); //分发器运行
return 0;
}