介绍一个异步通信的socket类
来源:互联网 发布:理发会员软件下载 编辑:程序博客网 时间:2024/05/21 23:33
async_socket类和MFC的CAsyncsocket相似,但不同的是它不使用应用程序的消息队列,而使用重载操作,因此它可以用在控制台应用程序中。
使用这个类时要重载一些虚函数。如下:
//远程服务器关闭连接
//err - WinSock error code
virtual void on_close(int err);
//接受新连接请求
//err - WinSock error code
virtual void on_accept(int err);
//socket准备接受数据
//err - WinSock error code
virtual void on_read(int err);
//socket准备发送数据
//err - WinSock error code
virtual void on_write(int err);
//socket被创建,监听线程开始
//err - WinSock error code
virtual void on_attach();
//重载读操作完成
//err - Win32 error code
virtual void on_read_complete(DWORD err, DWORD len);
//重载写操作完成
//err - Win32 error code
virtual void on_write_complete(DWORD err, DWORD len);
//监听线程销毁
virtual void on_clear();
virtual void on_timeout();
按下面的步骤可建立连接:
1 建立async_socket类。
2 on_attach 函数是创建socket时最先调用的函数。在这个函数里可以用bool read(char* pBuff, DWORD len) 和 bool write(char* pBuff, DWORD len)实现读写操作。
3 on_read_complete函数可以实现接收数据。
4 on_write_complete函数可以实现传输数据。
5 监听socket要用on_accept,它会调用accept通知接受当前等待的连接请求。
6 也可以用select(from on_attach)和相应的标志获得通知。
很重要的一点是在多任务程序中,监听线程要调用所有提到的函数。
例子中包括用async_socket类实现的http服务器,和一些其他的辅助类。
socket.zip">http://www.codeguru.com/code/legacy/network/async_socket.zip
- 介绍一个异步通信的socket类
- 异步Socket通信的一个简单示例
- 一个异步Socket通信的例子(Windows)
- 异步通信的socket类
- 一个基于VB.net的异步Socket网络TCP通信可防止任意一端意外终止TCP连接的类,。
- socket通信的一些介绍
- C#:简单的Socket异步通信服务
- 一个socket通信的讲解
- 异步Socket通信
- 异步Socket通信总结
- 异步Socket通信
- 异步Socket通信总结
- 异步Socket通信总结
- 多线程异步Socket通信
- 异步Socket通信总结
- 异步Socket通信
- Silverlight异步Socket通信
- Socket异步通信
- VC调用matlab中定义的.m文件中的函数的实例
- 用SQL语句统计IP地址前三段
- 定义自己的异常
- native event简介
- PL/SQL初学者必读:几十个实用的PL/SQL
- 介绍一个异步通信的socket类
- 动态SQL中DESCRIPTOR的应用
- 我想用sdk写一个画图程序,只要能随鼠标移动画出连续的线条就行
- 考研大作文超级万能无敌模板。。。。。
- 一个手工读写INI文件的类(二)
- 怎么用MFC实现浏览器收藏的功能
- 词法陷阱
- 讲解Oracle面试过程中常见的二十个问题
- 德国500多政府部门放弃微软转用