使用CompletableFuture.runAsync(),可以快速实现一个异步线程。
因为runAsync()里面的参数是Runnable,可以使用Jdk1.8的新特性,Lambda表达式,替换匿名内部类,只需要如下代码即可:
CompletableFuture.runAsync(()–>{
//这样就实现了Runnable的接口,替代了匿名内部类
})
需要注意的是,并不是所有接口都可以使用Lambda表达式来简化,只有函数式接口才可以。
如果主线程需要传递上下文到新线程中,那就需要创建一个新类,来继承Thread类,并且重写run方法,在run方法中来设置上下文,可以参考如下代码:
Jdk1.8新特新,CompletableFuture
最新推荐文章于 2022-09-04 23:46:18 发布