如何判断socket客户端连接断开? 我想在服务端通过sendUrgentData(data)来判断客户端是否断开,现在如果我把服务端和客户端都放在同一台电脑上测试没问题,客户端不会接收发送的紧急消息,但当我把服务端和客户端放在不同的电脑上的话,客户端就会接收到服务端发送的紧急消息。这是什么原因?如何禁止客户端不收到紧急消息?我试过setOOBInline(false)也不行,请帮忙! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 传统方法是设置心跳包, 就是确定一定时间就进行通讯一次。 如果没有收到回复,那么就为断开状态。 思路就是这个,socket下的都一样。 writer1.checkError() writer1假定是客户端的输出 这样就能检测他是不是关闭了 socket一方断开另一方会抛异常的 你做的是通信的项目还是自己随便写的程序,你有没有把你的Socket封装。看样子你应该没有,如果你有的话,只是把一个包特殊一点,不传输数据,只是判断连接是否正常。如果你要这样的一个例子,问1楼要吧,呵呵。不过我简单的描述一下:1、把Socket通信封装一下。2、把发送的内容封装一下。3、搭建一个通信的框架。4、建立若干个特殊包(2中有内容的封装),应答,确认,心跳等等内容一致的可以做成特殊包。多的不说了,如果有不同意见的可以发表一下。 项目的,没有封装的。为什么使用sendUrgentData时,服务端和客户端不在同一台电脑客户端就会接收紧急消息呢? 没用过这个。data - 要发送的数据字节 同一台电脑肯定传输没有问题,网络传输可能会由多包传输。如果你非要用这个,请楼下用过的人来解释。源码里也看不出有什么特别的。 我的问题已经通过其他途径解决!但还是不明白客户端为什么会接收 通过sendUrgentData发送的 紧急消息 java renameTo方法 自己写个链表,查找有问点问题? 我做的一个Frame为什么不能弹出显示? 一个关于Scanner类的问题 short的问题 100分问一个继承类访问(方法/变量)的简单问题,大虾门来帮忙``回答的就有分 新手求助 请教,如何在文本文件后追加一行? 熟悉C和C++,想要学习JAVA,该从什么地方入手(从哪些书籍入手比较好)? 简单的理论问题,高手请进。 C++和JAVA中自增运算符的区别 关于io的初学问题
就是确定一定时间就进行通讯一次。
如果没有收到回复,那么就为断开状态。 思路就是这个,socket下的都一样。
看样子你应该没有,如果你有的话,只是把一个包特殊一点,不传输数据,只是判断连接是否正常。
如果你要这样的一个例子,问1楼要吧,呵呵。
不过我简单的描述一下:
1、把Socket通信封装一下。
2、把发送的内容封装一下。
3、搭建一个通信的框架。
4、建立若干个特殊包(2中有内容的封装),应答,确认,心跳等等内容一致的可以做成特殊包。
多的不说了,如果有不同意见的可以发表一下。
data - 要发送的数据字节
同一台电脑肯定传输没有问题,网络传输可能会由多包传输。
如果你非要用这个,请楼下用过的人来解释。
源码里也看不出有什么特别的。
但还是不明白客户端为什么会接收 通过sendUrgentData发送的 紧急消息