这里写自定义目录标题
最近实现了一个功能读取文件数据然后落库,但是由于文件很多,性能有点慢,所以使用了CompletableFuture去多线程处理,但是初次使用后发现一直读不到对应的文件,debug也没发现问题,不适用CompletableFuture的时候文件是能找到的。经过排查发现是CompletableFuture内部线程不安全导致的
CompletableFuture.allOf(list.stream().map(async -> CompletableFuture.runAsync(() -> {
/* 简单的伪代码 下面的方法在使用了CompletableFuture之后 dirExist 一直是false 原因是线程不安全,查到了list的其他文件路径*/
boolean dirExist = SftpUtils.fileExists(sftpDownload