STM32/STM8技术william hill官网
直播中

李艳玮

7年用户 381经验值
私信 关注
[问答]

请问socket udp编程有没有什么方法可以知道网络断开或者连接的状态 ?

请教下,使用socket udp 编程,有没有什么方法可以知道网络断开或者连接的状态 ?

回帖(6)

李娟

2019-3-14 07:58:50
是网线的连接和端口开始sock的连接断开?

网线的可以检测  phy的连接状态来判断;

Socket的状态可以通过应答来确认数据是否送达.....
举报

史乃原

2019-3-14 08:12:44
原始的UDP的话没法判断的(甚至有的时候采用TCP协议都没法判断一方的异常掉线)。不过你可以增加心跳机制,每个一段时间进行一次心跳通信,如果在该规定的时间内还没有收到心跳数据的话就认为掉线了。
举报

庞兴玉

2019-3-14 08:26:15
楼主是问下位机还是上位机程序 可以给你代码看看
举报

李艳玮

2019-3-14 08:44:27
引用: 跨界F16 发表于 2019-3-14 09:15
楼主是问下位机还是上位机程序 可以给你代码看看

你好,最好是上位机,或者下位机都能够识别啊,
如果不能够同时使用,随便哪个都行啊,

你现在使用的是 那种方法啊 ?
举报

庞兴玉

2019-3-14 08:57:30
引用: 7vyydyfwef 发表于 2019-3-14 09:33
你好,最好是上位机,或者下位机都能够识别啊,
如果不能够同时使用,随便哪个都行啊,

上位机我用的是C#啊  
举报

李富贵

2019-3-14 09:11:38
同意@Angel_YY大神的观点。

我的做法就是,
定时(比如1分钟)向目标发送一个心跳包,
如果有回应,就表示连通,
如果没有回应,就表示断线了。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分