gpt4 book ai didi

java - RMI 问题 : what happens to an object reference after server goes down?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:03:38 26 4
gpt4 key购买 nike

有人可以帮忙吗?

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

A:我认为引用会在注册表中保留一段时间,但在那段时间(“租用期”?)之后,本地垃圾收集器可以删除引用。

我不知道“租用期”概念是否只对客户有效(使用脏调用和干净调用),所以也许我误解了 rmi 源...

最佳答案

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

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

关于java - RMI 问题 : what happens to an object reference after server goes down?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3223668/

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