场景一,并发调用,结果并集处理
public static void test() throws Exception{
MyService service = new MyService();
CompletableFuture<String> future1 = sevice.getData("http://www.baidu.com");
CompletableFuture<String> future2 = service.getData("www.tx.com");
CompletableFuture<String> future3 = service.getDa ta("www.aaa.com");
CompletableFuture.allOf(future1,future2,future3)
.thenApplyAsync(
()->{
}
)。exceptionally(e->{
}
服务并发调用消费结果
public static void main(String[] args){
MyService service = new MyService();
CompletableFuture<String> future1 = service.getData("http://www.aa.com");CompletableFuture<String> future2 = service.getData("http://www.aa.com");
future1.thenAcceptBothAsync(
future2,(future1,future2)->{
}
)。exceptionally(e->{
}
执行任务一,之后并发执行任务二、三
public static void test3(){
MyService myservice = new Myservice();
CompletableFuture<String> future1 = service.getData("http://www.baidu.com");
CompletableFuture<String> future2 = future1.thenApplyAsync((v)->{return "result from service2"});
CompletableFuture<String> future3 = service.getData("www.as.com");
future2.thenCombineAsync(future3,(f2result,f3result)->{
}