Junior — Middle
Can you explain what is meant by asynchronous API and how it works?
sobes.tech AI
Answer from AI
Asynchronous API is a programming interface that allows operations to be performed without blocking the main thread of execution. Instead of waiting for an operation to complete (such as a network request or file read), the program continues to work, and the result of the operation is processed later when it becomes available.
In Java, asynchrony is often implemented using:
- Callbacks — passing a function that will be called upon completion of the operation.
- Future and CompletableFuture — objects representing a result that will be available in the future.
- Reactive Streams (e.g., RxJava) — a data stream that can be processed asynchronously.
Example with CompletableFuture:
CompletableFuture.supplyAsync(() -> {
// Long operation
return "Result";
}).thenAccept(result -> {
System.out.println("Result received: " + result);
});
Here, the main thread is not blocked, and the result is processed in the thenAccept method when it becomes available.