连接后设置setReadTimeout和setConnectTimeout

时间:2017-12-07 14:14:47

标签: android urlconnection connection-timeout

这是一个简单的代码:

URLConnection connection;
URL source = new URL("Some Url");
connection = source.openConnection();
connection.setConnectTimeout(2000);
connection.setReadTimeout(2000);
connection.connect();
connection.setConnectTimeout(500);
connection.setReadTimeout(500);

我的问题是,如果我在使用各自的功能连接后重置连接超时并读取UrlConnection的超时,如上面的代码,新值是否会起作用,或者连接是否会根据旧值超时?在上面,何时会发生超时,在2000毫秒或500毫秒后?

1 个答案:

答案 0 :(得分:0)

假设你使用Java 7,根据oracle(here

的文档

URLConnection对象上调用connect后,尝试设置这些选项(连接超时和读取超时)是错误的。所以答案是它可能会使你的应用程序出错或者设置时间方法将被传递 - 取决于你使用什么样的try/catch来包装创建URLConnection的代码。

因为在Android工作室中,当您创建新的URLConnection或致电source.openConnection()来打开连接时,它会要求您用try/catch包围它。

希望这有帮助:D