CompletableFuture java8에 추가 Future의 한계 외부에서 완료시킬 수 없고, get의 타임아웃 설정으로만 작업 완료가 가능하다. get(블로킹 코드)를 통해서만 이후의 결과를 처리할 수 있다. 여러 Future를 조합하고 예외 처리할 수 없다.
CompletableFuture Future을 외부에서 완료시킬 수 있어서 CompletableFuture CompletionStage 인터페이스도 구현하고 있다. 작업들을 중첩시키거나 완료 후 콜백을 위해 추가 몇 초 이내에 응답이 안 오면 기본값을 반환 같은 거 추가 가능 외부에서 작업을 완료 시킬 수 있고 콜백 등록 및 Future 조합 가능 비동기 runAsync 비동기이면서 반환 값이 없는 경우에 사용한다.
반환 값이 없기에 CompletableFuture를 반환한다. CompletableFuture는 별도의 스레드에서 작업이 실행된다. supplyAsync 리턴 값이 runAsync와 다르게 존재한다...
#
allOf
#
thenCompose
#
thenCombine
#
thenApply
#
thenAccept
#
supplyAssync
#
runAsync
#
JAVA
#
handle
#
CompletableFuture
#
anyOf
#
thenRun
원문 링크 : [JAVA] CompletableFuture