@RequestMapping("/listener4")
@ResponseBody
public WebAsyncTask<String> listener4() {
long timeout = 10L * 1000; //自定义超时时间 10秒
final WebAsyncTask webAsyncTask = new WebAsyncTask(timeout, new Callable() {
@Override
public String call() throws Exception {
Thread.sleep(20L * 1000);
return "success";
}
});
webAsyncTask.onTimeout(new Callable() {
@Override
public Object call() throws Exception {
System.out.println("====异步任务超时了");
return "error";
}
});
webAsyncTask.onCompletion(new Runnable() {
@Override
public void run() {
System.out.println("===异步任务完成了");
}
});