public static void main(String[] args) throws InterruptedException, ExecutionException { // 将Callable包装成FutureTask,FutureTask也是一种Runnable IntStream.range(0, 3).forEach(i ->{ FutureTask<String> futureTask = new FutureTask<>(new Callable<String>() { @Override public String call() throws Exception { System.out.println("current thread"+Thread.currentThread().getName()); return "call"; } }); new Thread(futureTask).start(); String sum=""; try { sum = futureTask.get(); } catch (InterruptedException | ExecutionException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(Thread.currentThread().getName() + Thread.currentThread().getId() + "=" + sum); }); // get方法会阻塞调用的线程 }复制代码
Futuretask
转载文章标签 Futuretask 文章分类 后端开发
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章