, InterruptedException { CompletableFuture<String> cf = CompletableFuture.supplyAsync(
时间: 2024-09-19 11:07:51 浏览: 34
【Java分享客栈】一文搞定CompletableFuture并行处理,成倍缩短查询时间。.doc
`CompletableFuture.supplyAsync` 是 Java 中 `java.util.concurrent.CompletableFuture` 类的一个静态方法,用于异步地计算并返回结果。这里的参数通常是一个 Supplier 函数,它会在一个新的线程上执行,并将计算的结果作为 `CompletableFuture` 对象的初始值。
例如,当你有一个耗时的操作需要进行,而不想阻塞主线程,可以使用这个方法来异步获取结果。传入的函数会在后台线程里运行,然后返回的 `CompletableFuture<String>` 可以后续通过链式调用来获取最终结果,或者使用 `.get()` 来等待任务完成并获取结果,但这会阻塞直到任务结束。
```java
CompletableFuture<String> futureResult = CompletableFuture.supplyAsync(() -> {
// 这里执行耗时操作,比如网络请求或文件读取等
try {
Thread.sleep(2000); // 模拟延迟
} catch (InterruptedException e) {
throw new RuntimeException("Interrupted while waiting", e);
}
return "异步计算后的结果";
});
```
阅读全文