1
나는 사용하여 디렉토리의 파일 목록을 얻으려고 노력했다 :java.lang.UnixProcess는 본질적으로 NTFS에서`find`를 느리게 실행합니까?
val d = "..." // Path to a directory on a NTFS partition
val pb = new ProcessBuilder("find", d, "-type", "f", "-print")
pb.directory(new java.io.File(d))
val p = pb.start()
p.waitFor()
val listOfFiles = scala.io.Source.fromInputStream(p.getInputStream).getLines
그러나, p.waitFor()
는 완료하는 데 1 분 이상을하고있다.
에서 find . -type f -print
을 실행하는 경우 디렉토리에서 bash을 완료하는 데 1 초도 걸리지 않습니다.
따라서 NTFS 파티션에서 java.lang.UnixProcess
이 본질적으로 느리거나 잘못된 것이 있습니까?
Ubuntu 10.10에서 Scala 2.8.1, Java 1.6.0_24-b07을 사용하십시오.
기사의 아이디어를 사용하여 'InputStream' 처리를 _Thread_ (실제로 _Callable_)로 옮겼으며 이제는 작동합니다. 감사! –