- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* Background provided by m62 Visualcommunications, visit for more information * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * 《信息安全管理》徐国爱—北邮出版 * Background provided by m62 Visualcommunications, visit for more information WinSock I/O模型 WSAAsyncSelect模型 《网络程序设计》 * 回顾:Select模型 Select模型特点: 将网络事件与套接字集合关联,有网络事件发生的套接字保留在集合中,无网络事件发生的套接字被从集合中清除。 “select”有“筛选”之意,即将有网络事件发生的套接字“筛选”出来! * WinSock I/O模型-WSAAsyncSelect模型 WSAAsyncSelect模型原理 WSAAsyncSelect函数 WindowProc函数 WSAAsyncSelect模型编程 WSAAsyncSelect模型小结 动手实践 * WinSock I/O模型-WSAAsyncSelect模型 WSAAsyncSelect模型原理 WSAAsyncSelect函数 WindowProc函数 WSAAsyncSelect模型编程 WSAAsyncSelect模型小结 动手实践 * 1. WSAAsyncSelect模型原理 WSAAsyncSelect()是WSAAsyncSelect模型的核心函数,它允许应用程序以Windows消息的形式接收网络事件通知。 这个模型是为了适应Windows的消息驱动环境而设置的。现在许多要求不高的网络应用程序都采用WSAAsyncSelect模型,MFC(Microsoft Foundation Class,Microsoft基础类库)中的CSocket类就使用了它。 * 1. WSAAsyncSelect模型原理 WSAAsyncSelect模型原理图 * WinSock I/O模型-WSAAsyncSelect模型 WSAAsyncSelect模型原理 WSAAsyncSelect函数 WindowProc函数 WSAAsyncSelect模型编程 WSAAsyncSelect模型小结 动手实践 * 2. WSAAsyncSelect函数 WSAAsyncSelect函数自动把套接字设为非阻塞模式,并且为套接字绑定一个窗口句柄,当有网络事件发生时,便向这个窗口发送消息。 int WSAAsyncSelect( SOCKECT s, //需要设置的套接字句柄 HWND hWnd, //指定要绑定的窗口句柄 u_int wMsg, //网络事件到来时接收到的消息ID long lEvent //指定哪些网络事件通知需要发送 ) 返回值:①调用成功,返回0 ②失败,返回SOCKET_ERROR;可调用WSAGetLastError()获取错误码。 * 2. WSAAsyncSelect函数 其中,参数lEvent指定了要发送的通知码, 可以是如下取值的组合: FD_READ 可以读套接字 FD_WRITE 可以写套接字 FD_ACCEPT 检测到有连接进入 FD_CONNECT 检测到连接对方完成 FD_CLOSE 检测到连接被关闭 示例: FD_READ|FD_WRITE * WinSock I/O模型-WSAAsyncSelect模型 WSAAsyncSelect模型原理 WSAAsyncSelect函数 WindowProc函数 WSAAsyncSelect模型编程 WSAAsyncSelect模型小结 动手实践 * 3. WindowProc函数 程序/窗口的WindowProc函数接收派发来的Windows消息,并进行相应的处理。 LRESULT WindowProc( UINT message, //将要处理的Windows消息(消息ID号) //◆WM_SOCKET
文档评论(0)