资源简介

开发环境: VS2010 开发语言: C++ Winsock I/O模型: IOCP (完成端口模型) 代码示例包括Client和Server, common下包括Functor和Thread两个模块。Functor封装了函数对象,用于各种Callback;Thread封装了线程函数对象,用于将类的成员函数绑定到一个线程来执行。 server路径下IServer定义了服务端的接口,CompletionPort实现了IServer,并利用观察者模式和上层解耦。Server的实现分解为IoData, SocketContext, Disposer, Initializer, Parser, Poster, Creator几个主要的模块,并通过CompletionPort包装为统一的接口。其中对于连接的监听采用了AcceptEx函数来实现异步的Accept,该过程定义在WatchProc所对应的线程函数中。IOCPTest定义了服务端的测试接口,可以通过控制命令来实现对Server的Start, Stop, Suspend, Resume操作。 client下IClient定义了客户端的接口,SocketClient实现了IClient,通过ConnectProc以及SendPacketProc两个过程分别控制连接的建立和数据包的发送,并通过队列来管理连接到Server的socket。ClientTest定义了Client端的测试接口,可以自行定义配置信息。 Server运行的过程中会记录日志文件,方便查看服务器的运行状态。

资源截图

代码片段和文件信息

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       37525  2018-10-26 18:44  IOCP_20130726_V1.7z

评论

共有 条评论