首页 > 编程语言 > 详细

【CompletableFuture】CompletableFuture测试runAsync()方法调用CompletableFuture.join()/get()方法阻塞主线程

时间:2020-04-15 18:06:17      阅读:1448      评论:0      收藏:0      [点我收藏+]

问题

  CompletableFuture.runAsync() 返回 CompletableFuture<Void>对象,调用CompletableFuture.allOf(f1,f2).join() 是否能够阻塞主线程

结论

    public static void main(String[] args) {
        CompletableFuture<Void> f1 = CompletableFuture.runAsync(() -> {
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("第一个异步任务");
        });

        CompletableFuture<Void> f2 = CompletableFuture.runAsync(() -> {
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("第二个异步任务");
        });
        CompletableFuture.allOf(f1,f2).join();
        System.out.println("CompletableFuture Test runAsync");
    }

  CompletableFuture.runAsync() 返回 CompletableFuture<Void>对象,调用CompletableFuture.allOf(f1,f2).join() 可以阻塞主线程

【CompletableFuture】CompletableFuture测试runAsync()方法调用CompletableFuture.join()/get()方法阻塞主线程

原文:https://www.cnblogs.com/july-sunny/p/12706549.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!