




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
套接字I O模型 Winsock分别提供了 套接字模式 和 套接字I O模型 可对一个套接字上的I O行为加以控制 套接字模式用于决定在随一个套接字调用时 那些Winsock函数的行为 套接字模型描述了一个应用程序如何对套接字上进行的I O进行管理及处理 套接字I O模型 与 套接字模式 是无关的 套接字模型的出现 正是为了解决套接字模式存在的某些限制 Winsock提供的I O模型 select 选择 WSAAsyncSelect 异步选择 WSAEventSelect 事件选择 OverlappedI O 重叠式I O Completionport 完成端口 操作系统对套接字I O模型的支持情况 最通俗浅显的 IO模式 解析 老陈有一个在外地工作的女儿 不能经常回来 老陈和她通过信件联系 他们的信会被邮递员投递到他们的信箱里 情况与Socket模型非常类似 select模型 老陈非常想看到女儿的信 以至于他每隔10分钟就下楼检查信箱 看是否有女儿的信 在这种情况下 下楼检查信箱 然后回到楼上耽误了老陈太多的时间 以至于老陈无法做其他工作 select模型和老陈的这种情况非常相似 周而复始地去检查 如果有数据 接收 发送 WSAAsyncSelect模型 老陈使用了微软公司的新式信箱 这种信箱非常先进 一旦信箱里有新的信件 盖茨就会给老陈打电话 喂 大爷 你有新的信件了 从此 老陈再也不必频繁上下楼检查信箱了 牙也不疼了 你瞅准了 蓝天 不是 微软 WSAAsyncSelect模型是Windows下最简单易用的一种SocketI O模型 使用这种模型时 Windows会把网络事件以消息的形式通知应用程序 应用程序可以对收到WM SOCKET消息进行分析 判断是哪一个socket产生了网络事件以及事件类型 WSAEventSelect模型 微软的信箱非常畅销 购买微软信箱的人以百万计数 以至于盖茨每天24小时给客户打电话 累得腰酸背痛 喝蚁力神都不好使 微软改进了他们的信箱 在客户的家中添加一个附加装置 这个装置会监视客户的信箱 每当新的信件来临 此装置会发出 新信件到达 声 提醒老陈去收信 盖茨终于可以睡觉了 OverlappedI O事件通知模型 微软通过调查发现 老陈不喜欢上下楼收发信件 因为上下楼其实很浪费时间 于是微软再次改进他们的信箱 新式的信箱采用了更为先进的技术 只要用户告诉微软自己的家在几楼几号 新式信箱会把信件直接传送到用户的家中 然后告诉用户 你的信件已经放到你的家中了 老陈很高兴 因为他不必再亲自收发信件了 OverlappedI O事件通知模型和WSAEventSelect模型在实现上非常相似 主要区别在 Overlapped Overlapped模型是让应用程序使用重叠数据结构 WSAOVERLAPPED 一次投递一个或多个WinsockI O请求 这些提交的请求完成后 应用程序会收到通知 什么意思呢 就是说 如果你想从socket上接收数据 只需要告诉系统 由系统为你接收数据 而你需要做的只是为系统提供一个缓冲区 OverlappedI O完成例程模型 老陈接收到新的信件后 一般的程序是 打开信封 掏出信纸 阅读信件 回复信件 为了进一步减轻用户负担 微软又开发了一种新的技术 用户只要告诉微软对信件的操作步骤 微软信箱将按照这些步骤去处理信件 不再需要用户亲自拆信 阅读 回复了 老陈终于过上了小资生活 OverlappedI O完成例程要求用户提供一个回调函数 发生新的网络事件的时候系统将执行这个函数 完成端口模型 微软信箱似乎很完美 老陈也很满意 但是在一些大公司情况却完全不同 这些大公司有数以万计的信箱 每秒钟都有数以百计的信件需要处理 以至于微软信箱经常因超负荷运转而崩溃 需要重新启动 微软不得不使出杀手锏 微软给每个大公司派了一名名叫 CompletionPort 的超级机器人 让这个机器人去处理那些信件 WindowsNT小组注意到这些应用程序的性能没有预料的那么高 特别的 处理很多同时的客户请求意味着很多线程并发地运行在系统中 因为所有这些线程都是可运行的 没有被挂起和等待发生什么事 Microsoft意识到NT内核花费了太多的时间来转换运行线程的上下文 Context 线程就没有得到很多CPU时间来做它们的工作 大家可能也都感觉到并行模型的瓶颈在于它为每一个客户请求都创建了一个新线程 创建线程比起创建进程开销要小 但也远不是没有开销的 我们不妨设想一下 如果事先开好N个线程 让它们在那hold 堵塞 然后可以将所有用户的请求都投递到一个消息队列中去 然后那N个线程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校外安全应急知识培训总结课件
- 校园防火安全知识培训课件
- 校园物业安全知识培训课件
- 校园应急知识培训课件会议记录
- 淄博驾照考试试题及答案
- 播音模拟测试题及答案
- 安东集团面试题及答案
- 铁军学院考试题及答案
- 光大证券财务面试题及答案
- 2025年合肥肥东县招聘乡镇消防岗位人员考试笔试试题(含答案)
- 失眠的预防与中医护理
- 2025年云南高考真题化学试题含答案
- 2025-2030年中国再生建筑骨料行业市场现状供需分析及投资评估规划分析研究报告
- 2025届中考物理全真模拟卷【云南专用】(含解析)
- 大型医院食堂管理制度
- JG/T 355-2012天然石材用水泥基胶粘剂
- 2025消瘦诊治与管理专家共识解读课件
- DB62T 4248-2020 青海云杉育苗技术规程
- DB32/T 3390-2018一体化智能泵站应用技术规范
- 2025“铸牢中华民族共同体意识”应知应会网络知识竞赛试题及答案(三套)
- 2025年家庭教育指导考试试卷及答案总结
评论
0/150
提交评论