0
long start = System.currentTimeMillis();
URL link = (any url);
BufferedReader read = new BufferedReader(new InputStreamReader(link.openStream()));
System.out.println("Took: " + (System.currentTimeMillis()-start));

这将打印出大约 800-1200ms,网页本身不是太大,但大约是 300 行代码。

我想知道是否有任何方法可以优化或加快打开流的过程,以便我可以读取页面源的行,因为虽然这 1 秒还不错,但如果您在程序中打开其中的 30 个,那么你有一个问题,因为它需要 30 秒。也许我应该传递 BufferedReader 或 InputStreamReader 以便它不会每次都制作一个新的?

谢谢

4

1 回答 1

2

您看到的 99.9% 的时间是网络延迟和传输时间。阅读器的创建是微秒级的。除了获得更快的网络和访问具有通往 Internet 的粗管道的站点之外,您无能为力。

于 2012-05-14T23:56:56.320 回答