Java createDirectory()真的是非阻塞文件吗?

Java createDirectory()真的是非阻塞文件吗?,java,nio,project-reactor,Java,Nio,Project Reactor,我创建了这样的方法: Flux<GetObjectResponse> download(String bucket, List<String> s3FileNames) { String tmpDirName = UUID.randomUUID().toString(); Path dir = Paths.get(tmpDirName); if (!Files.exists(dir)) { try { Fil

我创建了这样的方法:

Flux<GetObjectResponse> download(String bucket, List<String> s3FileNames) {
    String tmpDirName = UUID.randomUUID().toString();
    Path dir = Paths.get(tmpDirName);
    if (!Files.exists(dir)) {
        try {
            Files.createDirectory(dir);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    return Flux.fromIterable(s3FileNames)
            .flatMap(filename -> Mono.just(GetObjectRequest.builder().bucket(bucket).key(filename).build()))
            .flatMap(getObjectRequest -> Mono.fromFuture(s3AsyncClient.getObject(getObjectRequest, Paths.get(tmpDirName, getObjectRequest.key()))));
}

IntelliJ是对的吗?当与文件进行互操作时,NIO是否会阻塞?

NIO2之前的所有文件操作都是同步的,您可以假定在方法返回时操作已经完成。 只有TCP套接字和文件监视程序具有异步操作

NIO2添加了
AsynchronousFileChannel
,但它不适用于目录


文档:

我不希望这样的调用是异步的。为什么会这样?创建文件夹时,通常的期望是该文件夹将立即可用于向其中添加文件。
Inappropriate blocking method call less... (Ctrl+1) 
Inspection info: Reports thread-blocking method calls found in a code fragment where a thread should not be blocked