博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
FutureTask的简单用法
阅读量:4573 次
发布时间:2019-06-08

本文共 1640 字,大约阅读时间需要 5 分钟。

package com.fmp.orderManager.util;

import java.util.Date;

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;

import com.fmp.orderManager.pojo.OrderManager;

import com.fmp.util.Public;

public class FutureTest {

public static void main(String[] args) {
ExecutorService executor = Executors.newSingleThreadExecutor();
/*实体类*/
final OrderManager ord1 = new OrderManager();
ord1.setOrderNo("11111");
ord1.setCreatTime(Public.DateTOString(new Date())); /**时间*/
FutureTask<OrderManager> future = new FutureTask<OrderManager>(
new Callable<OrderManager>() {

@Override

public OrderManager call() throws Exception {
// TODO Auto-generated method stub
Thread.sleep(30*1000);
System.out.println("---------沉睡中------------");
System.out.println(ord1.getCreatTime());
return ord1;
}
});
executor.execute(future);
System.out.println("future==" + future);
try {
OrderManager result = future.get(30*1000, TimeUnit.MILLISECONDS);
System.out.println(Public.DateTOString(new Date()));
System.out.println("result==" + result.getOrderNo());
} 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();
} finally {
future.cancel(true);
executor.shutdown();
}
}

}

 

转载于:https://www.cnblogs.com/cai170221/p/9488041.html

你可能感兴趣的文章
顺序栈
查看>>
Rsync详解
查看>>
【每日一读】Java编程中“为了性能”尽量要做到的一些地方
查看>>
什么是内网、什么是公网、什么是NAT
查看>>
【堆/排序】堆排序的两种建堆方法
查看>>
类的内置方法
查看>>
项目中使用的第三方开源库
查看>>
NOIP2009 潜伏者
查看>>
本地预览的vue项目,在githubpage静态展示
查看>>
SC命令---安装、开启、配置、关闭 cmd命令行和bat批处理操作windows服务
查看>>
Register Form Code
查看>>
iphone 如何清空UIWebView的缓存
查看>>
Java——变量
查看>>
定时关闭AWS上的EC2机器实例
查看>>
grep、awk、sed命令详解1
查看>>
Jenkins邮件配置
查看>>
MYSQL数据库的设计与调优
查看>>
在Apache下开启SSI配置
查看>>
多线程上下文切换
查看>>
基于django后端的html、js简单实现含中文csv文件下载
查看>>