在JavaRMI中,客户机如何知道其服务器已死亡?

在JavaRMI中,客户机如何知道其服务器已死亡?,java,rmi,Java,Rmi,目前,我正在开发一个基于JavaRMI的聊天服务器客户端程序。为了让客户机检测到其连接的服务器已死亡,我只能想到两种可能的解决方案,但在我的案例中,这两种解决方案都不起作用。 一,。等到客户端需要调用服务器的某些方法时,这种方式就不能很好地工作,因为如果聊天客户端不调用服务器的任何方法,它就不会知道服务器已经死了,因此聊天客户端在这段时间内无法再接收任何新的聊天消息。 二,。通过每隔几秒钟调用服务器的方法进行例行检查。但这会带来大量开销。 有没有更好的办法解决这个问题? 非常感谢。所以似乎没有人

目前,我正在开发一个基于JavaRMI的聊天服务器客户端程序。为了让客户机检测到其连接的服务器已死亡,我只能想到两种可能的解决方案,但在我的案例中,这两种解决方案都不起作用。
一,。等到客户端需要调用服务器的某些方法时,这种方式就不能很好地工作,因为如果聊天客户端不调用服务器的任何方法,它就不会知道服务器已经死了,因此聊天客户端在这段时间内无法再接收任何新的聊天消息。
二,。通过每隔几秒钟调用服务器的方法进行例行检查。但这会带来大量开销。
有没有更好的办法解决这个问题?

非常感谢。

所以似乎没有人回答这个问题。。。如果不与某个东西互动,你怎么知道它是死的

在IRC中,服务器将定期ping客户端,以检查它们是否仍然连接……您将看到
ping!砰,有时客户端会尝试发送消息,但却发现它没有连接


如果你担心开销。。只是不要经常这样做

使用2,也不要经常这样做。发出砰的声响!庞。。。如果不与某个东西互动,你怎么知道它是死的?