第13章 异步回调
同步:我去教室找张三,张三不在座位上,我就在座位上等张三回来
异步:我去教室找张三,张三不在座位上,我就让旁边同学等张三回来就通知我,这个时候我可以去做其他事情
package JUC.completable; import java.util.concurrent.CompletableFuture; public class CompletableFutureDemo { public static void main(String[] args) throws Exception { //异步调用 没有返回值 CompletableFuture<Void> completableFuture1 = CompletableFuture.runAsync(() -> { System.out.println(Thread.currentThread().getName()+"completableFuture1"); }); completableFuture1.get(); //异步调用 有返回值 CompletableFuture<Integer> completableFuture2 = CompletableFuture.supplyAsync(() -> { System.out.println(Thread.currentThread().getName()+"completableFuture2"); // int i = 1/0; return 1024; }); completableFuture2.whenComplete((t,u) -> { System.out.println("---t="+t);//返回值 System.out.println("---u="+u);//异常信息 }).get(); } }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器