Computer >> Máy Tính >  >> Lập trình >> Java

Các cải tiến API CompletableFuture trong Java 9 là gì?


CompletableFuture API được sử dụng cho không đồng bộ lập trình trong Java. Có nghĩa là chúng ta có thể viết không chặn bằng cách chạy một tác vụ trên một chuỗi riêng biệt ngoài main () chuỗi và thông báo cho main () chủ đề về tiến trình, hoàn thành hoặc thất bại của nó. Java 9 giới thiệu một số cải tiến trong CompletableFuture API, đó là:"Hỗ trợ hết thời gian chờ và trễ", "Cải thiện hỗ trợ cho phân lớp" và "Bổ sung các phương pháp ban đầu mới ".

Hỗ trợ hết giờ và chậm trễ

public CompletableFuture<T> orTimeout(long timeout, TimeUnit unit)

Phương thức trên đã được sử dụng để chỉ định nếu tác vụ không hoàn thành trong một khoảng thời gian nhất định, chương trình sẽ dừng và ném TimeoutException .

public CompletableFuture<T> completeOnTimeout(T value, long timeout, TimeUnit unit)

Phương thức trên hoàn thành CompletableFuture với giá trị được cung cấp. Nếu không, nó sẽ hoàn thành trước thời gian chờ nhất định.

Cải thiện hỗ trợ cho phân lớp

public Executor defaultExecutor()

Phương thức trên trả về mặc định người thực thi được sử dụng cho các phương thức không đồng bộ không hiển thị Trình thực thi. Nó có thể bị ghi đè trong các lớp con để trả lại Người thực thi để cung cấp ít nhất một độc lập chuỗi .

public <U> CompletableFuture<U> newIncompleteFuture()

Phương thức trên trả về chưa hoàn thành mới CompletableFuture của thông số kỹ thuật sẽ được trả về bởi CompletionStage phương pháp.

Phương pháp xuất xưởng mới

public static <U> CompletableFuture<U> completedFuture(U value)

Phương thức gốc ở trên trả về một CompletableFuture mới đã hoàn thành với giá trị được cung cấp.

public static <U> CompletionStage<U> completedStage(U value)

Phương thức gốc ở trên trả về CompletionStage mới đã hoàn thành trước đó với giá trị được cung cấp và chỉ tương thích với những phương pháp có sẵn trong giao diện CompletionStage .