Callable = Runable + return
Future :存储执行的将来才会产生的结果
public static void main(String[] args) throws ExecutionException, InterruptedException {
Callable<String> callable = new Callable<String>() {
@Override
public String call() throws Exception {
return "Hello Callable!";
}
};
ExecutorService service = Executors.newCachedThreadPool();
Future<String> future = service.submit(callable);//submit方法 异步
System.out.println(future.get());//future.get()方法 阻塞
service.shutdown();
}
本文深入探讨了Java中Callable接口和Future对象的概念与使用方法。Callable是Runnable的增强版,不仅能够执行任务,还能返回结果。Future则用于存储异步执行的结果,通过get方法可以获取这些结果,但该方法会阻塞直到结果可用。文章通过实例代码展示了如何创建Callable对象,使用ExecutorService提交任务,并通过Future获取执行结果。
3312

被折叠的 条评论
为什么被折叠?



