版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验7 WSAeventselectWINSOCK I/O模型程序设计一.实验目的通过这次实验,要掌握Winsock提供了另一个有用的异步I/O模型WSAeventselect WINSOCK I/O模型。和WSAAsyncSelect模型类似的是,它也允许应用程序在一个或多个套接字上,接收以事件为基础的网络事件通知。由WSAAsyncSelect模型采用的网络事件来说,它们均可原封不动地移植到新模型。在用新模型开发的应用程序中,也能接收和处理所有那些事件。该模型最主要的差别在于网络事件会投递至一个事件对象句柄,而非投递至一个窗口例程。由于WSAeventselect WINSOCK I/O模
2、型单线程只能处理64个套接字,要处理大量客户I/O请求,可采用线程池技术来实现。二.实验环境操作系统:Microsoft Windows 7 专业版 64位开发软件:Visual C+开发语言:C三.实验原理 WSAEventSelect提供了另一种异步事件通知模型。和是WSAAsyncSelect模型类似的是,它也允许应用程序在一个或多个套接字上,接收以事件为基础的网络事件通知。由WSAAsyncSelect模型采用的网络事件来说,它们均可原封不动地移植到新模型。在用新模型开发的应用程序中,也能接受和出力所有那些事件。该模型最主要的差别在于网络事件会投递一个时间对象句柄,而非投递一个窗口例程
3、。四.实验方法及步骤1.程序设计步骤(1)初始化Winsock库(2)创建套接字(3)绑定套接字(4)监听(5)创建事件对象,并关联到新的套接字(6)处理事件对象 1).在所有事件对象上等待 2).获取到来的通知消息 3).添加到表中 4).接收到数据 2. 程序流程图3.关键源码的解析(1)int nIndex = :WSAWaitForMultipleEvents(nEventTotal, eventArray, FALSE, WSA_INFINITE, FALSE);/ 对每个事件调用WSAWaitForMultipleEvents函数,以便确定它的状态nIndex = nIndex -
4、 WSA_WAIT_EVENT_0;for(int i=nIndex; i<nEventTotal; i+)nIndex = :WSAWaitForMultipleEvents(1, &eventArrayi, TRUE, 1000, FALSE);其中,nIndex返回的是第一个对象的位置,若发生的网络事件是accept则会产生一个新的套接字snew,则再与一个事件绑定,因为WSAWaitForMultipleEvents函数返回的是对象的第一个位置,则后面受信的得不到处理,而这里nIndex = :WSAWaitForMultipleEvents(1, &eventA
5、rrayi, TRUE, 1000, FALSE);可以解决这个问题。:WSAEventSelect(sListen, event, FD_ACCEPT|FD_CLOSE);此处的感兴趣的网络事件若是加上FD_READ和FD_WRITE事件后根本没有任何反应。五.实验记录及分析六.实验总结 通过本次实验,让我对WSAEventSelect模型有了更好的认识和理解。跟上次的WSAAsyncSelect原理上没什么区别,WSAAsyncSelect就是以windows消息为基础的网络事件,而WSAEventSelect就是对象跟套接字绑定一下,归根到底还是找到发生网络事件的套接字,然后分析发生了什
6、么网络事件,其中受信和未受信这两个状态可以在调用hEventObject参数来重设。当我抱着这样的想法做实验时,我发现我对这个实验的理解只有这肤浅的一层,没有深入了解,看来我们还是不能掉以轻心!教师评阅:90-95分:实验课前做了充足的准备工作,与专业相关知识能紧密联系。实验报告条理清晰,书写规范,图文并茂,报告内容全面,主要内容阐述详细。认识体会深刻,起到了实验的目的。80-85分:实验课前做了充足的准备工作,与专业相关知识能较紧密联系。实验报告条理清晰,书写规范,图文并茂,报告内容较全面,主要内容阐述较详细。认识体会较深刻,达到了实验的作用。70-75分:实验课前准备较充足,与专业相关知识能基本能联系,实验报告条理清晰,书写较规范,报告内容较全面,能用部分图片展示相关内容,主要内容阐述较详细。认识体会较深刻,达到了实验
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年天津国土资源和房屋职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 儿童玩具行业技术创新与突破路径分析考核试卷
- 二零二五年度大学科研设备共享合作协议4篇
- 2025年中国3D智能按摩椅市场调查研究报告
- 2025-2030全球瓷砖破碎机行业调研及趋势分析报告
- 二零二四年度智能穿戴设备私人合伙股权分配与合作合同3篇
- 二零二四年度智能家居系统部署合同
- 二零二五年度高层建筑结构安全检测合同3篇
- 2025-2030全球全地形四轮电动滑板车行业调研及趋势分析报告
- 2025至2031年中国快干亮光不结皮型油墨行业投资前景及策略咨询研究报告
- 青岛版二年级下册三位数加减三位数竖式计算题200道及答案
- GB/T 12723-2024单位产品能源消耗限额编制通则
- GB/T 16288-2024塑料制品的标志
- 麻风病防治知识课件
- 干部职级晋升积分制管理办法
- TSG ZF003-2011《爆破片装置安全技术监察规程》
- 2024年代理记账工作总结6篇
- 电气工程预算实例:清单与计价样本
- VOC废气治理工程中电化学氧化技术的研究与应用
- 煤矿机电设备培训课件
- 高考写作指导议论文标准语段写作课件32张
评论
0/150
提交评论