码迷,mamicode.com
首页 > 编程语言 > 详细

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

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

标签:string   int   public   问题   err   system   sys   dex   16px   

问题

  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()方法阻塞主线程

标签:string   int   public   问题   err   system   sys   dex   16px   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!