套接字I/O模式和I/O模型

本文介绍了套接字编程中的两种基本I/O模式:阻塞模式与非阻塞模式,并详细探讨了五种非阻塞模式下的I/O模型,包括选择模型、异步选择模型、事件选择模型、重叠I/O模型及完成端口模型。

对于套接字,以前没有真正理解,只知道有同步套接字、异步套接字等等说法,而且他们分别由不同的API函数负责创建,不清楚它们之间到底是什么样的关系。最近系统的学习了一下套接字编程,才真正搞明白到底是怎么回事。

套接字包括两种I/O模式,分别是阻塞模式和非阻塞模式(也称为异步模式)。

阻塞模式很好理解,也很容易实现,可以通过多线程的技术实现真正的套接字编程。

但是对于非阻塞模式就比较复杂。为了很好的实现套接字的非阻塞模式,又提出了五种套接字的I/O模型,分别是:1、选择模型,主要是利用Select函数实现对I/O的管理;2、异步选择模型,应用程序在套接字上接收以Windows消息为基础的网络事件通知;3、事件选择模型,这个模型允许应用程序接收以事件为基础的网络事件通知;4、重叠I/O模型,可以使用事件通知或者完成例程两种方式分别实现重叠I/O模型;5、完成端口模型,这种模型是目前为止,最为复杂的一种I/O模型。对于这些的I/O模型的介绍网上有很多资料进行介绍,这里就不多说了。

我理解的也不是很深刻,希望能和感兴趣的朋友一起探讨,更期待高手的指点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值