我们知道,网络编程的几种模型,有
1.选择模型
2.异步选择模型
3.事件选择模型
4.重叠IO模型
4完成端口模型
这些模型的目的无非就是管理多个网络的连接使其更有效率。
对于选择模型。主要用到的函数就是int select(
int nfds, //不使用
fd_set* readfds, //读请求
fd_set* writefds, //写请求
fd_set* exceptfds, //异常请求
const struct timeval* timeout //超时间隔
);
对于选择网络编程模型的主要编程步骤如下:
1. 建立套接字
2. 绑定套接字
3. 设置套接字为监听模式
4. 接受连接
5. 循环判断连接套接字上的请求。
代码如下:(udp code)
2.异步选择模型。
步骤:
1. 建立套接字
2. 绑定
3. 将套接字和窗口句柄建立关联特定网络事件
4. 设置为监听模式
5. 接受连接
6. 在窗口过程中处理建立连接的套接字的消息,比如读,写,等消息!!
7.
3.重叠IO模型
步骤:
1. 建立套接字WSASocket设置WSA_FLAG_OVERLAPPED
2. 绑定
3. 设置为监听模式
4. 接受连接
5. 接受数据WSARecv
6. 循环的等待事件触发
7. 获取事件结果WSAGetOverlappedResult
8. 对数据进行处理
9. 重新设置事件句柄
10.等待接受数据
代码:
本文详细介绍了网络编程中的几种常见模型,包括选择模型、异步选择模型及重叠IO模型,并提供了具体的实现步骤与示例代码。
659

被折叠的 条评论
为什么被折叠?



