为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > java中处理http连接超时的方法

java中处理http连接超时的方法

2018-04-10 4页 doc 15KB 28阅读

用户头像

is_729658

暂无简介

举报
java中处理http连接超时的方法java中处理http连接超时的方法 这段时间做j2me的一个小游戏.用到了http连接,学习了论坛上说的一种方法. "声明一个boolean公共变量,表明当前httpconnection是否得到服务器回应。 你的连接线程中在连接之前置这个变量为false; 另起一个监视线程,拿到那个HttpConnection的连接对象,并循环监视这个boolean公共变量。如果指定时间内(20秒后) 你的boolean公共变量还是false,那么就主动置httpconnection=null。这样,那边连接线程就会抛出异常退出来。...
java中处理http连接超时的方法
java中处理http连接超时的方法 这段时间做j2me的一个小游戏.用到了http连接,学习了论坛上说的一种方法. "声明一个boolean公共变量,明当前httpconnection是否得到服务器回应。 你的连接线程中在连接之前置这个变量为false; 另起一个监视线程,拿到那个HttpConnection的连接对象,并循环监视这个boolean公共变量。如果指定时间内(20秒后) 你的boolean公共变量还是false,那么就主动置httpconnection=null。这样,那边连接线程就会抛出异常退出来。 " -----zhengyun 写了Timer类来实现.(学习国外一个网站上的写法) class Timer extends Thread { /** 每个多少毫秒检测一次 */ protected int m_rate = 100; /** 超时时间长度毫秒计算 */ private int m_length; /** 已经运行的时间 */ private int m_elapsed; /** * 构造函数 * * @param length * Length of time before timeout occurs */ public Timer(int length) { // Assign to member variable m_length = length; // Set time elapsed m_elapsed = 0; } /** * 重新计时 * */ public synchronized void reset() { m_elapsed = 0; System.out.println("reset timer"); } /** * 故意设置为超时,可以在服务器有返回,但是错误返回的时候直接调用这个,当成超时处理 * */ public synchronized void setTimeOut() { m_elapsed = m_length+1; } /** */ public void run() { // 循环 System.out.println("timer running"); for (;;) { // Put the timer to sleep try { Thread.sleep(m_rate); } catch (InterruptedException ioe) { continue; } synchronized (this) { // Increment time remaining m_elapsed += m_rate; // Check to see if the time has been exceeded if (m_elapsed > m_length && !isConnActive) { //isConnActive 为全局变量 // Trigger a timeout timeout(); break; } } } } /** * 超时时候的处理 * */ public void timeout() { httpConnection = null; System.out.println("conn time > " + TIME_OUT + " ms"); } } 在http连接线程调用的同是调用 new Timer(20*1000).start(); 需要重新计时时候调用timer.reset(); 不知道大家有没有更好的方法可以一起探讨一下~
/
本文档为【java中处理http连接超时的方法】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索