LabVIEWwilliam hill官网
直播中

snail-200

11年用户 12经验值
擅长:可编程逻辑
私信 关注
[问答]

Labview客户端状态获取

求助,目前只有5积分,哪位大佬给点帮助:
采用TCP传输数据,一个服务器多个客户端,通过一个按钮控制,点动按钮将服务器中的一个文件发给4个客户端,目前已实现发送文件和读取连接客户端数量,不过客户端连接数量不是实时读取,如果某个客户端断开连接,需要发送一次数据后才能更新客户端数量,而且同一客户端反复断开连接时服务器端客户端数量显示值不断增加,只有发送一次数据后才能恢复为实际连接值;
1、怎么实时显示每个客户端和服务器之间的连接状态?(比如说每个客户端通过一个指示灯指示,连接上了该指示灯绿色,未连接上显示红色,四个指示灯分别显示四个客户端状态)

2、怎么提示服务器给每个客户端发送文件成功了?(比如说每次发送后提示,数据成功发送给了XXX个客户端,XXX显示实际发送成功客户端数量)

回帖(1)

许奕

2021-11-15 15:02:56

最佳答案

客户端发心跳包给服务端,可以解决第一个问题
客户端接受到完整文件后,发一个ok给服务端,服务端就可知晓文件传输情况。
2 举报
  • snail-200: 有没有可以参考的样例呢,大侠   ?1、没做过心跳包;2、客户端发送OK给服务器端,怎么知道是哪个客户端发送的呢?
  • 许奕 回复 snail-200: 心跳包,就是隔一定时间客户端给服务器发一条消息,以此来判断客户端存活。
    服务端在用“等待tcp侦听器”函数不是有Ip、端口、连接句柄出来么。你现在用句柄接收到ok,哪个设备发送出来,你不知道吗?

更多回帖

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