之前对于CnComm类库做过简单的分析,详见CnComm多线程串口通讯类解读CnComm是llbird开发的WINDOWS/WINCE 多线程串口通讯开源库,提供同步IO并发访问的支持,内存管理采用内存池技术,提供对于C++异常的支持。在实际的项目中,需要使用多个串口来收发消息,于是对于CnComm类做了简单的封装操作。
- 实现对于CnComm串口类的封装,提供基本的接口
- 通过串口管理类来实现对于串口的资源的管理
- 串口管理类采用单例模式实现
- 在VS2005下测试通过
1.串口管理类的实现,可增加为多串口的管理类
#ifndef _COMM_MANAGE_H_
#define _COMM_MANAGE_H_
#include "commWrapper.h"
//串口管理类
class CommManage{
public:
static CommManage* Instance();
virtual ~CommManage();
public:
CommWrapper& commInstance(){return commInst;}
protected:
CommManage();
CommManage(const CommManage&);
CommManage& operator= (const CommManage&);
public:
CommWrapper commInst;
private:
static CommManage* _commMangeinstance;
};
#endif