Java,增加套接字超时

我有一个简单的服务器客户端应用程序.一切正常,但在某个阶段,服务器需要超过5分钟的时间才能得到响应(这是正常的,需要像这样).问题是,如果需要超过5分钟,我会不断得到这个异常: java.net.socketTimeoutException:读取超时.

所以我想知道是否有一些认的套接字超时在WindowsJava虚拟机我可以设置?我不能更改客户端代码,所以setSoTimeout()不是我的选择.

使用Windows XP

编辑:据了解,现在客户端没有打开套接字连接.它从服务器传递.所以我反编译了所有的服务器jar文件.但仍然无法找到关于超时的任何内容.

解决方法

套接字超时为0,这意味着永远不会超时.如果在5分钟后实际超时,这意味着它已经被设置在代码中.如果源不可用,并且没有配置,您可以尝试反编译该类,并查找setSoTimeout调用.

由于注释,以及搜索没有找到任何setSoTimeout()调用的事实,您可以采取不同的方法.只是让它超时,并写一个小脚本,将重试呼叫,以防万一.如果您可以从命令行调用客户端,则可以解析输出,如果它在stderr上.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...