supplyAsync
时间: 2024-04-24 16:19:00 浏览: 11
supplyAsync是Java 8中的一个方法,它是CompletableFuture类的一个静态方法。supplyAsync方法用于创建一个CompletableFuture对象,该对象在后台执行一个异步任务,并返回一个结果。supplyAsync方法接受一个Supplier函数式接口作为参数,该接口定义了一个无参数的方法,返回一个结果。
以下是一个使用supplyAsync方法的示例代码:
```java
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
public class SupplyAsyncExample {
public static void main(String[] args) {
CompletableFuture<String> future = CompletableFuture.supplyAsync(() -> {
try {
TimeUnit.SECONDS.sleep(1);
} catch (InterruptedException e) {
e.printStackTrace();
}
return "Hello, World!";
});
try {
String result = future.get();
System.out.println(result); // 输出:Hello, World!
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
}
}
```
在上面的示例中,我们使用supplyAsync方法创建了一个CompletableFuture对象,该对象在后台执行一个异步任务。在这个示例中,异步任务是一个匿名的Lambda表达式,它会休眠1秒钟,然后返回字符串"Hello, World!"。通过调用future.get()方法,我们可以获取异步任务的结果,并打印出来。