当前位置: 首页 > news >正文

东莞做企业网站长沙网站定制公司

东莞做企业网站,长沙网站定制公司,网页网站作业制作,提供信息门户网站建设问题现象:下位机做TCP服务器,上位机来连接下位机的TCP服务,中间会有主动断开(上位机主动关闭socket)和异常断开(网线断开)的情况,出现异常的时候,上位机连接下位机的TCP …

问题现象:下位机做TCP服务器,上位机来连接下位机的TCP服务,中间会有主动断开(上位机主动关闭socket)和异常断开(网线断开)的情况,出现异常的时候,上位机连接下位机的TCP socket号会变成0,下位机正常发数据,但是上位机那边收不到信息,因为windwos系统将socket为0视为错误socket,不能正常通信。

问题分析:不用纠结windows为啥不能使用socket为0通信了(linux可以使用socket为0通信),

应该分析为啥socket会出现0的异常情况。

产生原因:1.在Linux中,socket 0和1通常用于标准输入输出重定向。‌ Socket 0和1分别代表标准输入(stdin)和标准输出(stdout),它们用于重定向标准输入输出流。linux系统默认会打开0和1的socket。

2.下位机在关闭用户socket的时候将socket置为0了,然后又调用了close(socket=0),导致关闭了socket 0.

3.当上位机来连接下位机的TCP服务时,系统分配socket号是从小到大依次分配的,这时候发现socket 0空闲,所以就将socket 0分配出去了,这种情况下,重新启动下位机程序都无法解决问题,只能重启设备。

解决办法:1.close socket以后,将socket置为-1这个非正常值,千万不能置为0.

                  2.当再次调用关闭socket函数的时候,先判断socket>0,再进行close操作。

总结:tcp使用不当,关闭了系统使用的socket 0,再次创建socket的时候,系统分配了socket 0引发的问题。初始化和清空变量的时候要考虑变量的有效值。

http://www.mnyf.cn/news/51926.html

相关文章:

  • 网络推广运营外包公司重庆做seo外包的
  • 驾校一点通网站怎么做网络优化工程师招聘信息
  • frp可以做网站吗百度搜索排行榜风云榜
  • 网站建设属于技术活吗快速seo优化
  • 网站建设 甘肃河南企业站seo
  • 网站制作代办机构抖音网络营销案例分析
  • 女人和男人做床上爱网站百度快速排名软件原理
  • 长乐区住房和城乡建设局网站企业推广的渠道有哪些
  • 提供做网站服务好技术短期培训班
  • 网页模板下载了以后如何进行修改网络优化师是什么工作
  • 广州技术支持 奇亿网站建设域名比价网
  • 做电影网站的图片素材百度指数免费添加
  • 南宁网站建设mxfsemseo编辑培训
  • 网站ftp上传工具哪个好用参考消息今天新闻
  • 健康咨询类网站模板整站快速排名优化
  • 天津电商网站制作百度seo工具
  • 介绍做素食的网站免费制作个人网站
  • 广东建设网 四川是什么网站近日发生的重大新闻
  • 彩票网站开发 极云外贸订单怎样去寻找
  • 网站建设方案策划营销推广平台
  • 青海网站建设策划站长之家是什么
  • 建设工程质量管理条例网站营销策略有哪些内容
  • 做VIP视频网站赚钱福州百度seo
  • 海口中小企业网站制作seo工具包
  • 建设好网站怎么进行网站关键词优化
  • wordpress 中英文seo网络搜索引擎优化
  • 海口今日头条新闻如何做好seo基础优化
  • 企业网站的用户需求百度推销广告一年多少钱
  • 连云港建设工程安全网站站长seo查询
  • 学生网站建设实训报告seo百度快速排名