socket中的connect提示报错:errno = “EINPROGRESS“

socket中的connect提示报错:errno = “EINPROGRESS“socketconnectioctlsocketerror.h#defineEINPROGRESS115/*Operationnowinprogress*/

大家好,又见面了,我是你们的朋友全栈君。

在编写Socket程序时候,在使用connect连接时,errno提示报错,打印消息是EINPROGRESS,查询代码如下,意思是操作正在运行。

#define  EINPROGRESS 115  /* Operation now in progress */

 下面是我的编程流程

  1. 建立socket
  2. ioctlsocket设置非阻塞
  3. connect连接

再去官方网站查看connect接口,返回EINPROGRESS的官方描述:https://man7.org/linux/man-pages/man2/connect.2.html

EINPROGRESS
              The socket is nonblocking and the connection cannot be
              completed immediately. 

刚好我设置的非阻塞,调用connect接口不能立马建立连接,所以就会报这个错误。

于是修改逻辑如下即可解决问题:

  1. 建立socket
  2. connect连接
  3. ioctlsocket设置非阻塞

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160545.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux 修改时区和时间

    Linux 修改时区和时间

    2022年2月16日
    53
  • java文件上传服务器路径,java文件上传服务器路径地址「建议收藏」

    java文件上传服务器路径,java文件上传服务器路径地址「建议收藏」java文件上传服务器路径地址内容精选换一换已获取自动化工具包,并上传到服务器完成解压,得到完整的软件文件夹tsdbtool。已下载依赖:GCC-7.3.0、CMake-3.5.2的源码包,放到tsdbtool文件夹下的postgresqlDep文件夹中,下载地址见表2。已获取PostgreSQL的源码包或者RPM包,并上传到自动化工具tsdbtool目录下。根据实际环境,完成安装将NFS文件系…

    2022年7月11日
    25
  • 哈希冲突原因「建议收藏」

    哈希冲突原因「建议收藏」哈希计算就是努力的把比较大的数据存放到相对较小的空间中。最常见的哈希算法是取模法。下面简单讲讲取模法的计算过程。比如:数组的长度是5。这时有一个数据是6。那么如何把这个6存放到长度只有5的数组中呢。按照取模法,计算6%5,结果是1,那么就把6放到数组下标是1的位置。那么,7就应该放到2这个位置。到此位置,哈斯冲突还没有出现。这时,有个数据是11,按照取模法,11%5=1,也等于1。那

    2022年6月18日
    36
  • [已实现]暴力破解路由器管理密码

    搬新家以后,第一时间连上网络,登录路由器后台。博主租的房子是某平台的,网络是由平台提供的。和上次租房不同的地方在于,这次路由器后台管理密码居然和给的wifi连接密码不一样了,肯定是有人改过密码了!admin等弱口令都试过了,全都不管用!对一个it技术人员来说,被人掌握网络生杀大权肯定是无法容忍的!第一次测试的时候尝试用telnet登录路由器,发现密码已经被更改,无法登录,预料是跟web控制台密码一起改变的。…

    2022年4月9日
    145
  • kmp算法 入门题

    kmp算法 入门题

    2021年9月27日
    47
  • javac使用「建议收藏」

    javac使用「建议收藏」javac使用

    2022年5月28日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号