当前位置: 首页 >Java技术 > CompletableFuture---1

CompletableFuture---1

 1 /** 2  * 两个任务同时并发执行 并有结果值返回 3  * @throws Exception 4  */ 5 public static void test1() throws Exception{ 6 StopWatch stopWatch = new StopWatch(); 7 stopWatch.start(); 8 CompletableFuture<String> future1 = new CompletableFuture<>(); 9 new Thread(new Runnable() {10 @Override11 public void run() {12 try {13 System.out.println("future1");14 Thread.sleep(1500);15 future1.complete("I LOVE YOU1");16 }catch (Exception e){17 System.out.println(e);18 }19 }20 }).start();21 22 23 CompletableFuture<String> future2 = new CompletableFuture<>();24 new Thread(new Runnable() {25 @Override26 public void run() {27 try {28 System.out.println("future2");29 Thread.sleep(2000);30 future2.complete("I LOVE YOU2");31 }catch (Exception e){32 System.out.println(e);33 }34 }35 }).start();36 37 System.out.println(future1.get() + "---" + future2.get());38 stopWatch.stop();39 System.out.println("stopWatch.getTotalTimeMillis():" + stopWatch.getTotalTimeMillis());40 }

返回结果如下图所示:

future1future2I LOVE YOU1---I LOVE YOU2stopWatch.getTotalTimeMillis():2005

 

作者:郭慕荣
来源链接:https://www.cnblogs.com/jelly12345/p/14028977.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaclub.cn/java/117250.html

分享给朋友:

“CompletableFuture---1” 的相关文章

SpringBoot整合消息队列工具kafka 2022年05月15日 21:58:17
浅谈分布式与集群的概念 2022年05月15日 22:00:23
数组转LIst的几种方法 2022年05月16日 11:18:24
SpringBoot日志框架 2022年05月16日 19:52:50
java计数循环及小技巧 2022年05月21日 11:37:19
java中将英尺换算为身高 2022年05月21日 11:37:21
字符串的使用 2022年05月21日 11:41:36
【Linux:开源操作系统】 2022年05月23日 21:29:44
ThreadPoolTaskExecutor线程池参数配置 2022年05月23日 23:37:52