3

找到了一种安全的获取方式LocateRegistry(即使注册表尚不存在)。

Registry registry = null;
try {
    registry = LocateRegistry.getRegistry(52365);
    registry.list();
    // This call will throw an exception if the registry does not already exist
}
catch (RemoteException e) { 
    registry = LocateRegistry.createRegistry(52365);
}

是否可以先检查注册表的存在和使用情况getRegistrycreateRegistry根据检查结果?

4

1 回答 1

2

是否可以先检查注册表是否存在,然后根据检查结果使用getRegistry或createRegistry?

当然。试试第createRegistry()一个;抓住ExportException,这意味着它已经在运行,并getRegistry()无条件地执行。

我想在 getRegistry 不存在时避免不必要的调用

这不是一个有效的担忧。这是一个几乎免费的电话。没有网络活动。

于 2013-02-21T01:22:37.333 回答