Java RMI – 客户端超时
发布时间:2020-08-16 05:42:44  所属栏目:Java  来源:互联网 
            导读:我正在使用 Java RMI构建分布式系统,它必须支持服务器丢失. 如果我的客户端使用RMI连接到服务器,如果此服务器出现故障(例如电缆问题),我的客户端应该会收到异常,以便连接到其他服务器. 但是当服务器停机时,我的客户端没有任何反应,他一直在等待回复.如何设置
                
                
                
            | 
                         我正在使用 Java RMI构建分布式系统,它必须支持服务器丢失. 如果我的客户端使用RMI连接到服务器,如果此服务器出现故障(例如电缆问题),我的客户端应该会收到异常,以便连接到其他服务器. 但是当服务器停机时,我的客户端没有任何反应,他一直在等待回复.如何设置超时时间? 解决方法对于套接字读取超时,可以这样设置自己的工厂,RMISocketFactory.setSocketFactory( new RMISocketFactory()
            {
                public Socket createSocket( String host,int port )
                    throws IOException
                {
                    Socket socket = new Socket();
                    socket.setSoTimeout( timeoutMillis );
                    socket.setSoLinger( false,0 );
                    socket.connect( new InetSocketAddress( host,port ),timeoutMillis );
                    return socket;
                }
                public ServerSocket createServerSocket( int port )
                    throws IOException
                {
                    return new ServerSocket( port );
                }
            } );                        (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  
