1、Server服务器端:启动一个服务端监听某个port端口代码:

2、设置了启动新线程来管理建立的每个socket链接,我们设置收到链接后10秒端来链接代码

3、Client客户端代码:打印链接状态代码:

4、测试:首先执行服务端代码,再执行client代码,我们会在client代码的控制台看到例如以下数据信息:

5、从连接对象的属性信息来看,连接是没有中断,但实际链接已经在服务端建立链接10秒后断开了。说明了上述几个方法是不能实时推断出socket的链接状态,仅仅是socket驻留在内存的状态。事实上。此时假设调用流去读取信息的话。就会出现异常。 事实上,想要推断socket是否仍是链接状态。仅仅要发一个心跳包即可了,例如以下一句代码:

6、找到了方法,就在测试一下。服务端代码无需修改,client客户端代码如以下代码:

7、注意事项:
