Wednesday, 31 July 2019

java completable promise example

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;
import java.util.concurrent.*;
class Main {
public static void main(String[] args) throws ExecutionException, InterruptedException {
        CompletableFuture<String> whatsYourNameFuture = CompletableFuture.supplyAsync(()-> {
         
           // public String get() {
              System.out.println("in promise");
                try {
                    TimeUnit.SECONDS.sleep(1);
                } catch (InterruptedException e) {
                    throw new IllegalArgumentException(e);
                }
                return "Rajeev";
           // }
        });


        CompletableFuture<String> promiseExample = CompletableFuture.supplyAsync(()-> {
            //public String get() {
              System.out.println("in promise");
                try {
                    TimeUnit.SECONDS.sleep(1);
                } catch (InterruptedException e) {
                    throw new IllegalArgumentException(e);
                }
                return "Kumar";
           // }
        });

      CompletableFuture<String> result = whatsYourNameFuture.thenCombine(promiseExample, (str1, str2) -> {
        String name=str1 + " " + str2;
        return name;
        });
        System.out.println("Value- " + result.get());
        //System.out.println(welcomeText.get());
    }
}

No comments:

Post a Comment