//数据落地时间长,使用10条线程同时处理 ExecutorService pool = Executors.newFixedThreadPool(10); CompletableFuture[] futureList = list.parallelStream().map(item-> CompletableFuture.supplyAsync(() -> { logger.info("--currentThread--" + Thread.currentThread().getName()); //** 处理item 逻辑 return item; }, pool) .whenComplete((s,e)->{ logger.info("--数据操作完成"); }) ).toArray(CompletableFuture[]:: new); //所有任务执行完才放行 CompletableFuture.allOf(futureList).join(); //关闭线程池 pool.shutdown();
多线程同时处理集合--阻塞线程完成
最新推荐文章于 2023-06-18 18:32:00 发布