我有以下服务器类为JRMP和IIOP导出自己:
public class FooServer implements RemoteInt{
FooServer(){
UnicastRemoteObject.exportObject(this);
PortableRemoteObject.exportObject(this);
}
public boolean remoteMethod() throws RemoteException{
// some stuff
return false;
}
}
以及以下安装程序类,它创建服务器并将其注册到正在运行的寄存器:
public class Setup{
public static void main(String[] args){
RemoteInt serv = new FooServer();
Naming.rebind("//localhost/server", this);
}
}
问题是当安装程序完成其作业时,它会等待FooServer终止。相反,我想退出安装程序类,让FooServer运行。 我该怎么办?
答案 0 :(得分:0)
你做不到。远程对象从当前JVM导出,并保持运行直到您取消导出它。请注意,main()方法确实退出,但RMI / JRMP和RMi / IIOP侦听线程仍在运行,因此JVM不会退出。