套接字 io 模型 小结
2008-07-16 16:57
218 查看
#include <winsock2.h>
#pragma comment(lib,"Ws2_32.lib")
////////////////////////////////////////////////////////////////////////////////////////////////////
最近复习了下socket 编程,特写于此帮助自己和大家记忆。
套接字 io 模型能够完成对套接字上进行的通信进行管理。具体如下:
1。select 模型:
通过把套接字置入集合,通过 select 函数筛选,获取该套接字上发生的io活动。
2。wsaasyncselect 模型:
将感兴趣的io活动注册到对应的套接字,如果该活动发生就给指定窗体发送
注册消息。
3。wsaeventselect 模型:
将感兴趣的套接字活动注册到对应的套接字,如果该活动发生就把指定的事件变为通知状态。等待该事件对象后查询该事件对应的套接字上发生的io活动。
上述套接字的共同点:
1。一个线程内能够完成对多个套接字的管理。
2。套接字上发生io活动后必须同步进行读写操作(如果读取大量数据时间是个问题)。
4。overlapped 模型:
一样是通过事件通知机制获取套接字上发生的io活动。区别是操作系统帮助我们管理了套接字上进行的数据收发活动,直到该活动结束后才通过用户线程。
5。completionport 模型:
同 overlapped 模型,不同点是提供了类似线程池的机制,当投递的重叠 io 操作完成后,会调用等待该重叠io 操作完成的线程中的一个。该模型通过操作系统底层优化,提高了效率。同时没有事件内核对象的单线程等待64个socket 事件的限制。
是做网络游戏必选的套接字模型。
#pragma comment(lib,"Ws2_32.lib")
////////////////////////////////////////////////////////////////////////////////////////////////////
最近复习了下socket 编程,特写于此帮助自己和大家记忆。
套接字 io 模型能够完成对套接字上进行的通信进行管理。具体如下:
1。select 模型:
通过把套接字置入集合,通过 select 函数筛选,获取该套接字上发生的io活动。
2。wsaasyncselect 模型:
将感兴趣的io活动注册到对应的套接字,如果该活动发生就给指定窗体发送
注册消息。
3。wsaeventselect 模型:
将感兴趣的套接字活动注册到对应的套接字,如果该活动发生就把指定的事件变为通知状态。等待该事件对象后查询该事件对应的套接字上发生的io活动。
上述套接字的共同点:
1。一个线程内能够完成对多个套接字的管理。
2。套接字上发生io活动后必须同步进行读写操作(如果读取大量数据时间是个问题)。
4。overlapped 模型:
一样是通过事件通知机制获取套接字上发生的io活动。区别是操作系统帮助我们管理了套接字上进行的数据收发活动,直到该活动结束后才通过用户线程。
5。completionport 模型:
同 overlapped 模型,不同点是提供了类似线程池的机制,当投递的重叠 io 操作完成后,会调用等待该重叠io 操作完成的线程中的一个。该模型通过操作系统底层优化,提高了效率。同时没有事件内核对象的单线程等待64个socket 事件的限制。
是做网络游戏必选的套接字模型。
相关文章推荐
- 套接字 io 模型 小结
- (转)套接字IO模型(三) WSAEventSelect模型
- linux基础——linux下五种IO模型小结(阻塞IO、非阻塞IO、IO复用、信号驱动式IO、异步IO)
- Linux网络通信编程(套接字模型TCP\UDP与IO多路复用模型select\poll\epoll)
- 套接字IO模型(一) Select模型
- 套接字IO模型
- 套接字IO模型(一) Select模型
- Linux网络通信编程(套接字模型TCP\UDP与IO多路复用模型select\poll\epoll)
- 套接字IO模型Select模型
- 套接字IO模型(二) WSAAsynSelect模型
- 套接字IO模型(二) WSAAsynSelect模型
- Windows套接字IO模型之EventSelect
- 看完io模型之后小结
- fork条件下的套接字io模型分析
- 套接字IO模型(三) WSAEventSelect模型
- 套接字IO模型(一) Select模型
- 套接字IO模型(三) WSAEventSelect模型
- Linux下5种IO模型的小结
- 套接字IO模型(一) Select模型
- .套接字IO模型(一) Select模型