CompletableFuture8742468051c85b06f0a0af9e3e506b5c 클래스는 Java에서 Future8742468051c85b06f0a0af9e3e506b5c 인터페이스를 구현합니다. CompletableFuture 는 명시적으로 완료된 Future로 사용할 수 있습니다. Future 인터페이스는 많은 기능을 제공하지 않습니다. 비동기 계산 결과를 얻으려면 get() 메서드를 사용해야 하므로 이 메서드는 차단되므로 non에서 여러 종속 작업을 실행할 수 없습니다. -blocking 방식 및 CompletableFuture 클래스는 체인에서 여러 종속 작업을 실행하는 기능을 제공할 수 있습니다. 이러한 작업은 비동기 방식으로 실행되므로 결과가 나올 때 다음 작업을 트리거하는 작업 체인을 만들 수 있습니다. 현재 작업을 사용할 수 있습니다.
Grammar<strong>public class CompletableFuture<T> extends Object implements Future<T>, CompletionStage<T></strong>
import java.util.function.Supplier; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; public class CompletableFutureTest { public static void main(String args[]) throws ExecutionException, InterruptedException { Calculator calc = new Calculator(4, 7); <strong>CompletableFuture<Integer></strong> future = CompletableFuture.<strong>supplyAsync</strong>(calc); future.<strong>thenAccept</strong>(result -> { System.out.println(result); }); System.out.println("CompletableFutureTest End.... "); Thread.sleep(10000); } } <strong>// Calculator class</strong> class Calculator implements <strong>Supplier<Integer></strong> { private int x, y; public Calculator(int x, int y) { this.x = x; this.y = y; } <strong>@Override</strong> public Integer get() { try { Thread.sleep(3000); } catch(InterruptedException e) { e.printStackTrace(); } return x + y; } }
<strong>CompletableFutureTest End.... 11</strong>
위 내용은 Java 9에서 CompletableFuture와 Future의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!