当前位置:首页 > 开发 > 编程语言 > Java > 正文

Java 网页 读取 阻塞 超时的解决办法

发表于: 2011-09-10   作者:cherishLC   来源:转载   浏览次数:
摘要: URL.openConnection 方法读取网页会产生阻塞, 采用异常 或concurrent包里的future等均无效; 搜到用Socket的.setOsTimeOut(); 可以设置时间,但是自己要写不少请求的文件头; 最后看到这篇,URL有类似的方法: http://stuffthathappens.com/blog/2007/09/10/urlopenstream

URL.openConnection 方法读取网页会产生阻塞,

采用异常 或concurrent包里的future等均无效;
搜到用Socket的.setOsTimeOut(); 可以设置时间,但是自己要写不少请求的文件头;


最后看到这篇,URL有类似的方法:
http://stuffthathappens.com/blog/2007/09/10/urlopenstream-might-leave-you-hanging/


主要代码如下:
引用

URLConnection conn = url.openConnection();
// setting these timeouts ensures the client does not deadlock indefinitely
// when the server has problems.
conn.setConnectTimeout(timeoutMs);
conn.setReadTimeout(timeoutMs);
in = conn.getInputStream();

Java 网页 读取 阻塞 超时的解决办法

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
阻塞与非阻塞IO JAVA IO的各种流是阻塞的,这意味着,当一个线程调用read()或write()时,该线程被阻
publicclassTest3{ /** * *@parampath *@parampaths *@paramsavepaths */ publicstaticvoidchange(S
前些天一个棘手的问题,早上上班刚到公司不久,就发现系统里面出现了大量的查询超时。 一开始以为是
JAVA SpringMVC+mybatis(oracle 和 mysql) HTML5 全新高大尚后台框架 bootstrap IO: IO 是主存和
IO: IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,
IO: IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,
阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或者当队列是
Java阻塞队列_BlockingQueue 以上是BlockingQueue所有的方法。。 add(anObject):把anObject加到Blo
阻塞队列:只是队列的拓展,传统队列当满的时候会抛出异常,而阻塞队列会一直等待,不会报错,当然
源于http://blog.csdn.net/sureyonder/article/details/5633647 套接字或插座(socket)是一种软件形
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号