// 自定义线程池
private final ExecutorService executor = Executors.newFixedThreadPool(5);
// 任务集合
List<?> list
// 提交任务线程
List<CompletableFuture<?>> futures = list.stream().map(
obj -> CompletableFuture.supplyAsync(
() -> func(obj)
, executor)
.exceptionally(
e -> {
// 出现异常的处理业务
return obj;
})
).collect(Collectors.toList());
// 收集任务完成结果内容
List<?> res = futures.stream().map(CompletableFuture::join).collect(Collectors.toList());
// 任务处理方法
private ? func(? num) {
return obj;
}