java 定时调用方法,有结果返回
2015-01-29 17:02
309 查看
public class MyCallable implements Callable { static int num=1; // 标志位 private int flag = 0; private String resultId=""; public MyCallable(int flag) { this.flag = flag; } public MyCallable(int flag,String resultId) { // TODO Auto-generated constructor stub this.flag = flag; this.resultId=resultId; } public String call() throws Exception { if (this.flag == 0) { //如果flag的值为0,则立即返回 return "flag = 0"; } if(this.flag == 1){ //如果flag的值为1 try { while(true){ System.out.println("--------方法----------:"+num); String message="error"; /** *等待查询时间最多为20秒 */ Thread.sleep(2000); num++; if(num==10||!"error".equals(message)){ return message; } } }catch(InterruptedException e) { System.out.println("Interrupted"+e.getMessage()); } return "false"; }else{ // falg不为0或者1,则抛出异常 throw new Exception("Bad flag value!"); } } }
调用:
MyCallable task=new MyCallable(1, result); //创建一个执行任务的服务 ExecutorService es = Executors.newFixedThreadPool(3); Future future = es.submit(task); String message=(String) future.get(); //关闭任务 future.cancel(true);
相关文章推荐
- JavaScript中远程级联调用(RPC)java对象中的方法并返回结果
- 使用java传参调用exe并且获取程序进度和返回结果的一种方法
- Java调用某一js文件中的方法,执行并返回结果
- 使用java传参调用exe并且获取程序进度和返回结果的一种方法
- Java 调用 Oracle 存储过程返回结果集
- JAVA中的hasNextInt()方法多次调用只有一个结果的原因
- .net调用别人的http页面,返回结果,url中有中文的处理,get和post两种方法
- Java调用Document.getElementById方法返回null的解决办法
- java.lang.IllegalAccessException Action中的方法调用了,却不出现结果 spring注入值为null
- JAVA方法中通过调用URL来获取其返回的内容
- Java 调用存储过程 返回结果集
- 初学Java,方法中返回this,连续调用方法(六)
- ACE_Future实现了单写多读模式,可以用来异步方法调用的结果返回
- DWR 对DATA的理解(调用返回List、Set或者Map的java方法)
- Java定时任务--定时调用方法(servlet)
- json返回hibernate的结果会自动调用(get)查询出关联表的数据,解决方法
- Java调用Oracle存储过程返回查询结果集
- dwr例子4调用返回JavaBean的java方法
- Java调用.NET XML Web Services返回的数据集合的方法
- dwr例子6调用返回List、Set或者Map的java方法