Java RMI问题:服务器关闭后,对象引用会发生什么变化?

Java RMI问题:服务器关闭后,对象引用会发生什么变化?,java,garbage-collection,rmi,Java,Garbage Collection,Rmi,有人能帮忙吗 Q:应用服务器通过调用Naming.rebind()在RMI注册表中注册对象。一段时间后,服务器应用程序关闭。解释在注册表中注册的对象引用将发生什么情况 答:我认为该引用在注册表中保留了一段时间,但在这段时间(“租赁期”)之后,本地垃圾收集器可以删除该引用 我不知道“租赁期”的概念是否只对客户有效(使用脏电话和干净电话),所以我可能误解了rmi的来源…您的回答不正确。DGC租约到期不会导致从注册表中删除远程对象。该条目将永远保留在注册表中,或直到注册表退出,或有人解除其绑定 实际发

有人能帮忙吗

Q:应用服务器通过调用Naming.rebind()在RMI注册表中注册对象。一段时间后,服务器应用程序关闭。解释在注册表中注册的对象引用将发生什么情况

答:我认为该引用在注册表中保留了一段时间,但在这段时间(“租赁期”)之后,本地垃圾收集器可以删除该引用


我不知道“租赁期”的概念是否只对客户有效(使用脏电话和干净电话),所以我可能误解了rmi的来源…

您的回答不正确。DGC租约到期不会导致从注册表中删除远程对象。该条目将永远保留在注册表中,或直到注册表退出,或有人解除其绑定


实际发生的情况是存根“变得陈旧”。客户端仍然可以在注册表中查找它,或者保留他们已经拥有的,但是如果服务器JVM仍在运行,任何使用它的尝试(即通过它调用远程方法)都会引发
NoSuchObjectException
,否则会出现
ConnectException

不确定您在问什么,您会提出一个问题,回答它,然后做一个陈述。问题是什么?