zoukankan      html  css  js  c++  java
  • JUC异步回调CompletableFuture用法

    代码如下:

    //异步调用和同步调用
    public class CompletableFutureDemo {
        public static void main(String[ ]args) throws Exception {
    
            //同步调用
            CompletableFuture<Void> completableFuture1 = CompletableFuture.runAsync(() -> {
                System.out.println(Thread.currentThread().getName() + ": CompletableFuture1");
            });
            completableFuture1.get();
    
            //异步调用
            CompletableFuture<Integer> completableFuture2 = CompletableFuture.supplyAsync(() -> {
                System.out.println(Thread.currentThread().getName() + ": CompletableFuture2");
                return 1024;
            });
            completableFuture2.whenComplete((t,u) -> {
                System.out.println("-----t= "+ t);
                System.out.println("-----u= "+ u);
            }).get();
    
        }
    }

    结果如下:

    如果有异常,观察t,u的值

    //异步调用和同步调用
    public class CompletableFutureDemo {
        public static void main(String[ ]args) throws Exception {
    
            //同步调用
            CompletableFuture<Void> completableFuture1 = CompletableFuture.runAsync(() -> {
                System.out.println(Thread.currentThread().getName() + ": CompletableFuture1");
            });
            completableFuture1.get();
    
            //异步调用
            CompletableFuture<Integer> completableFuture2 = CompletableFuture.supplyAsync(() -> {
                System.out.println(Thread.currentThread().getName() + ": CompletableFuture2");
                int i = 10/0;
                return 1024;
            });
            completableFuture2.whenComplete((t,u) -> {
                System.out.println("-----t= "+ t);
                System.out.println("-----u= "+ u);
            }).get();
    
        }
    }

    结果如下:

  • 相关阅读:
    C#学习笔记
    Visual Studio 快捷键
    java 8 中lambda表达式学习
    Spfa算法
    dijkstra算法
    topSort
    并查集--学习详解
    trie树--详解
    POJ1988 并查集的使用
    Mybatis的一级缓存和二级缓存
  • 原文地址:https://www.cnblogs.com/liuyi13535496566/p/15042228.html
Copyright © 2011-2022 走看看