多线程同步异步

文章目录

  • CompletableFuture 概述
    • 优点
      • 使用demo

CompletableFuture 概述

CompletableFuture提供了一种观察者模式类似的机制,可以让任务执行完成后通知监听的一方。

优点

1.异步任务结束时,会自动调用某个对象的方法
2.主线程设置好回调后,不再关心异步任务的执行,异步任务之间可以顺序执行
3.异步任务出错时,会自动回调某个对象的方法

使用demo

public class CompletableFutureBuildDemo {

    public static void main(String[] args)throws ExecutionException,InterruptedException {

        ExecutorService executorService = Executors.newFixedThreadPool(3);

        CompletableFuture<Void> completableFuture =CompletableFuture.runAsync(()->{
            System.out.println(Thread.currentThread().getName());

            try {
                TimeUnit.SECONDS.sleep(1);
            }catch (InterruptedException e){
                e.printStackTrace();
            }
        });

        System.out.println(completableFuture.get());

        executorService.shutdown();
    }
}

你可能感兴趣的:(java,前端,开发语言)