当超过 5 个项目来自列表时 CompletableFuture 给出错误

问题描述

我目前正在使用 CompletableFuture supplyAsync() 方法将一些任务提交到公共线程池。下面是代码片段的样子:

        try{
                List<CompletableFuture<HashMap<String,List<EntCodeDesc>>>> CompletableFutures =
                        codifiedPropertiesModel.getCodifiedAttributes().stream().map(code -> CompletableFuture.supplyAsync(() ->getCMSCode(code,code.getKey()))).collect(toList());
                CompletableFuture.allOf(CompletableFutures.toArray(new CompletableFuture[CompletableFutures.size()])).join();
                for (CompletableFuture<HashMap<String,List<EntCodeDesc>>> feature :
                        CompletableFutures) {
                    feature.get().forEach(codeResult::put);
                }
            }
            catch(Exception ex){
                System.out.println(ex);
            }
        return codeResult;

我在 spring 服务中使用它,并且存在线程池耗尽的问题。任何指针都深表感谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)