在远程方法调用

时间:2016-07-08 17:15:18

标签: java rmi

我想知道是否需要在不再需要存在的情况下,在远程方法调用中显式取消导出作为参数传递的远程对象。例如:我是一个在线游戏,当客户端要求GameServer(在RMI注册表中绑定)游戏时,服务器将GameHandler作为远程对象返回给客户端。当游戏结束并且GameHandler不再需要活动时,我是否必须致电UnicastRemoteObject.unexportObject(this, false);?我这样做但有时我得到NoSuchObjectException

1 个答案:

答案 0 :(得分:0)

当没有远程或本地参考时,它将通过DGC和本地GC自动导出。如果您想知道DGC何时启动,请实施Unreferenced界面。