线程超时处理
来源:互联网 发布:js换行符分隔字符串 编辑:程序博客网 时间:2024/06/16 06:12
当执行一个耗时的操作,又不想影响已有的功能,我们可以做超时处理,当某个业务逻辑超过特定的时间时我们主动放弃断续执行下面的逻辑。
简单的代码实现
参考代码如下:
package easyfind.test; import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.FutureTask;import java.util.concurrent.TimeUnit;import java.util.concurrent.TimeoutException; /** * @author tank * @email kaixiong.tan@qq.com * @date:2015年7月30日 上午11:19:20 * @description: * @version :0.1 */ public class TestThreadTimeOut { public static void main(String[] args) { TestThreadTimeOut.Task task = new TestThreadTimeOut().new Task(); FutureTask<String> futureTask = new FutureTask<String>(task); //ExecutorService executor = Executors.newCachedThreadPool(); //executor.submit(futureTask); //executor.shutdown(); Thread thread = new Thread(futureTask); thread.start(); String result=null; try { result = futureTask.get(5, TimeUnit.SECONDS);//设置超时时间 } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ExecutionException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TimeoutException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("超时了"); } System.out.println(result); System.out.println("结束"); } class Task implements Callable<String> { @Override public String call() throws Exception { System.out.println("子线程请求中"); Thread.sleep(3000);//这里做耗时的处理业务逻辑 return "test"; } }}
0 0
- 线程超时处理Demo
- JAVA处理线程超时
- JAVA处理线程超时
- JAVA处理线程超时
- java线程超时处理
- 线程超时处理
- JAVA处理线程超时
- JAVA处理线程超时
- JAVA线程的超时处理
- Http请求通过线程添加超时处理
- linux c单线程I/O超时处理
- UNIX/LINUX 单线程I/O 超时处理
- 线程池源码剖析(创建,复用,超时处理)
- java 线程超时时间
- Java线程超时实现
- Java线程的传说(2)——HttpClient超时机制(安全问题处理:访问超大文件控制)
- 在MFC 子线程中使用UI(控件)退出时死锁或者超时处理参考
- 反应式处理超时事件
- Java NIO中的Buffer 详解
- 了解 epoll 的原理
- Java实现获取前、后N天日期的函数
- poj1276(dp) Cash Machine
- asp tags like <% %>
- 线程超时处理
- weex JS部分环境搭建简单笔记
- 读取Android手机设备相关信息
- 【数据结构】链表相关内容
- Capturing Photos之Taking Photos Simply
- 微信公众平台java开发详解(工程代码+解析)
- I2S的函数分析
- mysql 分表策略
- mysql妙用:批量插入记录,遇到重复记录则为自动更新