文章详情页
java - CompletableFuture allof 超时处理
问题描述
想实现的效果:future的集合如果在3秒内没有返回的化就执行提取出其中已经完成的future。
编译报错,'Cannot infer functional interface type.'
问题解答
回答1:编译报错的问题,是题主没有太仔细哈,这个很容易就检查出来了可以看到这个报错标红的地方,在applyToEither方法的第二个参数上,那查看一哈applyToEither方法的参数格式
public <U> CompletableFuture<U> applyToEither(CompletionStage<? extends T> other, Function<? super T, U> fn) {return orApplyStage(null, other, fn); }
第二个参数是一个Function,Function要求的是根据一个参数返回一个结果,而题主写的很明显,是没有参数的啊,写成了一个Supplier,当然参数类型是不符合方法applyToEither的要求噻
标签:
java
相关文章:
1. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. font-family - 我引入CSS3自定义字体没有效果?3. docker start -a dockername 老是卡住,什么情况?4. macos - mac下docker如何设置代理5. dockerfile - [docker build image失败- npm install]6. objective-c - iOS开发支付宝和微信支付完成为什么跳转到了之前开发的一个app?7. PHP中的$this代表当前的类还是方法?8. angular.js - 求一款angular插件9. java - 我用Tomcat访问SQL server数据库时,出现以下错误,该怎么解决?10. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?
排行榜