博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
socket 异步选择 WSAAsyncSelect 用法
阅读量:6628 次
发布时间:2019-06-25

本文共 1069 字,大约阅读时间需要 3 分钟。

WSAAsyncSelect 实现给异步socket给了另一种实现方式,就是通过窗口消息的方式来提醒对socket接收还是发送

msdn有非常全面的解释:https://msdn.microsoft.com/en-us/library/windows/desktop/ms741540(v=vs.85).aspx

本文几解释以下我认为难懂的几点:

1.The socket created by the  function has the same properties as the listening socket used to accept it. 

由listen socket 的accept返回的socket和listen的socket 具有同样的属性。意味着accept返回的socket不用再重新注册窗口消息。这给socket服务器提供了便利。

2.When one of the nominated network events occurs on the specified socket s, the application window hWndreceives message wMsg. The wParam parameter identifies the socket on which a network event has occurred. The low word of lParam specifies the network event that has occurred. The high word of lParam contains any error code. The error code be any error as defined in Winsock2.h.

wParam标识哪一个socket发生了事件,LOWWORD(lParam)表示当前发生的是哪个事件(是接收还是发送)  而HIWORD(lParam ) 标识错误代码

3.Although WSAAsyncSelect can be called with interest in multiple events, the application window will receive a single message for each network event。

虽然注册事件可以是同时多个事件,但是消息响应是一个一个来的。

下面附上我今天写的Socket 服务端。是由上一篇博文里的Server端修改而来。

 

转载地址:http://myhpo.baihongyu.com/

你可能感兴趣的文章
备份单表数据
查看>>
Java豆瓣电影爬虫——抓取电影详情和电影短评数据
查看>>
ajax
查看>>
c语言插入排序
查看>>
[Go] 复合类型(数组、切片、字典、结构体)变量的 初始化 及 注意事项
查看>>
052 自动将每日的日志增量导入到hive中
查看>>
Android NDK开发(五)--C代码回调Java代码【转】
查看>>
Linux systemd 打开调试终端、添加开机自运行程序
查看>>
教你一招:根据身份证号计算出生年月和年龄 text函数和mid函数混用 datedif函数和today函数混用...
查看>>
将用户信息保存到Cookie中
查看>>
struts 官方网址
查看>>
Spring 4 官方文档学习(十一)Web MVC 框架之locales
查看>>
linux内核升级图文攻略(转)
查看>>
MySQL 导入数据
查看>>
NopCommerce 增加 Customer Field
查看>>
李笑来:演讲能力是我这一生有幸学到的最重要能力
查看>>
中国铁路车次编号规则
查看>>
Linux编程之给你的程序开后门
查看>>
深入理解Spring MVC 思想
查看>>
【调查】开车时,你多长时间看一下后视镜?(安全驾驶)
查看>>