复制代码
  CompletableFuture.runAsync(()->{
//            try {
//                if(CollectionUtil.isNotEmpty(list)) {
//                    fillByType(0, 5,queryBO.getBatch(),list, sheet);
//                }
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
//        },threadPoolConfig.threadPoolTaskExecutor());
//        CompletableFuture.runAsync(()->{
//            try {
//                exportQuarterStatistic( queryBO.getBatch().substring(0,4),sheet);
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
//        },threadPoolConfig.threadPoolTaskExecutor());
复制代码

我想加快导出速度,两个部分分别用多线程填充数据,后来我发现部分内容不填充,断点调试也是执行到相应单元格的,我当时怀疑就是多线程引起的。我猜测我用的线程池可能切换过程中影响了写入数据。