gpt4 book ai didi

java - 当互联网连接突然断开时,套接字会发生什么情况?

转载 作者:行者123 更新时间:2023-12-01 21:30:01 26 4
gpt4 key购买 nike

我有一台服务器和许多客户端。我的客户端通过服务器发送消息。如果客户端连接到服务器,我的服务器会将该客户端的套接字引用放入 Sock 数组中。如果另一个客户端向第一个客户端发送消息,服务器会使用 boolean 数组检查第一个客户端是否连接到服务器,如果在线,则使用数组中的套接字引用将消息发送到第一个客户端,否则将消息发送到数据库。每个客户端在注销之前都会向服务器发送关闭信号,以便服务器可以更新 boolean 数组。但是如果第一个客户端的互联网连接突然断开,则数组中的 boolean 变量仍然为 true。为此,我想在服务器中创建一个线程来检查 boolean 数组,如果数组中的任何索引为真,我想检查与其对应的套接字是否打开。我应该使用什么套接字方法 - socket.isConnected() 或 socket.isClosed() 或任何其他方法?

最佳答案

确保连接正常工作的唯一方法是定期接收心跳或消息。
isConnectd() 的意思是:我曾经连接过并且 isClosed() 这意味着;我是否在我这边调用了 close(),但这些并没有达到您想要的效果。

关于java - 当互联网连接突然断开时,套接字会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37541475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com