判断socket断开

2024-07-04 14:01:53

用getsockopt来判断,还是蛮准确的
int SocketConnected(int sock)
{
if(sock<=0)
return 0;
struct tcp_info info;
int len=sizeof(info);
getsockopt(sock, IPPROTO_TCP, TCP_INFO, &info, (socklen_t *)&len);
if((info.tcpi_state==TCP_ESTABLISHED))
{
//myprintf("socket connected\n");
return 1;
}
else
{
//myprintf("socket disconnected\n");
return 0;
}
}

转载于:https://blog.51cto.com/embeded/1591125

判断socket断开相关推荐

  1. linux检查socekt是否断开,如何在C语言中判断socket是否已经断开

    如果不主动关闭socket的话,系统不会自动关闭的,除非当前进程挂掉了,操作系统把占用的socket回收了才会关闭.小编今天跟大家简单介绍下如何在C语言中判断socket是否已经断开 下面来介绍判断非 ...

  2. C语言socket connect()函数(初始化套接字上的连接)(未完)(如何测试socket是否已经断开,如何判断socket是否断开)

    参考文章:C网络编程socket之connect函数 需研究下这个函数超时多久才返回... 文章目录 项目中注释解释 man 2 文档解释 关于上面man 2 手册中所提到的connect()案例,在 ...

  3. JAVA 判断Socket 远程端是否断开连接

    JAVA 判断Socket 远程端是否断开连接 最近在做项目的时候,遇到这样一个问题,如何判断 Socket 远程端连接是否关闭,如果关闭的话,就要重建连接Socket的类提供了一些已经封装好的方法, ...

  4. C#socket通信时,怎样判断socket双方是否断开连接

    我在Server端new了一个socket,然后bind,开了一个线程来accept前来连接的client,每接到一个client前来连接就新开一个线程和它进行通信. 我把Server端得到的sock ...

  5. python如何判断tcp异常断开_TCP socket如何判断连接断开

    http://blog.csdn.net/zzhongcy/article/details/21992123 SO_KEEPALIVE是系统底层的机制,用于系统维护每一个tcp连接的. 心跳线程属于应 ...

  6. (read/write、select、getsockopt、signal)实时判断socket连接状态/是否断开

    为什么socket服务器断开之后客户端还能发送一次数据呢? 文章目录 为什么socket服务器断开之后客户端还能发送一次数据呢? 一.了解背后的原因 1.客户端是如何将数据发送给服务器端的?(服务器端 ...

  7. TCP数据包发送的过程及实际问题解决 判断socket是否断开 解决socket数据传输数据丢失的问题

    文章目录 一.头条之问题引出 二.tcp发送数据过程 三.我的问题解决(判断socket是否断开) 四.头条之问题回答 这是篇文章是在看了今日头条后,回想起来自己曾今遇到过的一个关于socket套接字 ...

  8. Linux之判断socket是否断开

    1.方式一: int rv_len; socklen_t val; rv_len = sizeof(val);int ret = getsockopt(client_sockfd, SOL_SOCKE ...

  9. java socket 判断Socket连接失效

    要判断socket连接链路是否可用时,不能通过socket.isClosed() 和 socket.isConnected() 方法判断,要通过心跳包 socket.sendUrgentData(0x ...

最新文章

  1. 干货 | 目标检测技巧大汇总(含代码与解读)
  2. 设计模式之工厂类模式总结对比、简单工厂模式、工厂方法模式、抽象工厂模式、带反射的工厂模式、例子代码分析、最详细
  3. 服务器系统版本选择,云服务器选择系统版本
  4. 数字图像处理及MATLAB实现实验五——图像增强
  5. 【Git+Docker】Docker初期学习认识和安装配置详解
  6. java ssssss_Java 时间字符串(HH:mm:ss.SSS) 转换成毫秒(milliseconds)
  7. 删除Oracle数据库时常见问题(注册表方面,文件目录方面,环境变量方面)
  8. Redis学习总结(18)——Redis 常见面试题复习
  9. VS快速生成JSON数据格式对应的实体
  10. Socket基础知识分享
  11. python爬虫 书籍 外文_Python爬虫——WuXiaWorld英文版小说
  12. luogu4360 锯木厂选址 (斜率优化dp)
  13. 图说:Windows 8 Copy的呈现变化
  14. java executor spring_java - Spring TaskExecutor实现 - 堆栈内存溢出
  15. picasa图片编辑器_如何将iPhone图片和电影导入Picasa
  16. python加密狗的制作_制作u盘加密狗图文教程
  17. 尚学堂马士兵struts2 课堂笔记(四)
  18. Android热修复Sophix的使用
  19. (XWZ)的python学习笔记——pandas
  20. Linux 下搭建web压力测试工具web polygraph

热门文章

  1. codeforces 702A A. Maximum Increase(水题)
  2. 【转】Pro Android学习笔记(二六):用户界面和控制(14):RelativeLayout
  3. 【Mac】Mac键盘实现Home, End, Page UP, Page DOWN
  4. Asp.Net中OnClientClick与OnClick
  5. YOLO系列专题——YOLOv1实践篇
  6. java 维文生成图片_维文、哈萨克文、柯尔克孜文检测 (java实现把UTF-8转为unicode)...
  7. @entity 不限字节长度的类型_面试常考,项目易错,长文详解C/C++中的字节对齐...
  8. redis lettuce 超时_Spring Cache 操作 Redis 实现数据缓存(上)
  9. g的python实现_Python Gevent
  10. html input type=quot;filequot;,input[type='file']默认样式