我正尝试使用HttpsURLConnection
从服务器读取响应。优化BufferedReader readLine()操作
InputStreamReader in = new InputStreamReader((InputStream) con.getContent());
BufferedReader buff = new BufferedReader(in);
String line;
StringBuilder response=new StringBuilder();
long st=System.nanoTime();
while ((line =buff.readLine())!= null) {
response=response.append(line +"\n");
}
long et=System.nanoTime();
System.out.println("resp process time: "+((et-st))+" ns");
return response.toString();
}
目前,大约需要450毫秒来读取整个约80000个字符(1100行)的响应。
输出:RESP处理时间:435272240纳秒
是否可以进一步优化该代码,以减少处理时间?
的可能重复【JAVA:如何看的BufferedReader更快(http://stackoverflow.com/questions/4666748/java-how-to-read-bufferedreader-faster) – 2015-07-19 12:20:14
@OSryx不完全重复,因为这里使用了一个'StringBuilder'。 – RealSkeptic