java调用异步方法
时间: 2024-10-22 14:19:52 浏览: 16
在 Java 中,调用异步方法通常涉及使用 Future、Callable 和 CompletableFuture 等并发工具类。异步操作允许程序继续执行其他任务,而不会阻塞主线程等待某个耗时的操作完成。
1. **Future 接口**:你可以创建一个 Future 对象并传递给 ExecutorService 提交的任务,然后通过 get() 或者 isDone(), isCancelled() 方法检查结果或等待任务完成。
```java
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<String> future = executor.submit(new Callable<String>() {
public String call() throws Exception {
// 异步任务代码
return "Result";
}
});
```
2. **CompletableFuture**:Java 8 引入了 CompletableFuture,它提供了更丰富的功能,如流式处理、链式调用和异常处理。创建 CompletableFutures 的方式更多样,比如基于现有函数、Promise 或者现有的 Future。
```java
CompletableFuture<String> future = CompletableFuture.supplyAsync(() -> {
// 异步任务代码
return "Result";
});
```
阅读全文