2015-02-01 5 views
-3

64GB SSD 및 16GB RAM이있는 코어 i5 시스템을 사용하고 있습니다. 그리고 저는 약 4MB의 파일을 작성 중이며 2-4KB/초의 쓰기 속도를 얻고 있습니다. 왜 그렇게 느린가요?파일 작성이 너무 느린 이유는 무엇입니까?

try(PrintWriter out = new PrintWriter(new BufferedWriter(
     new FileWriter("D:\\"+filename+"length.txt", true)))) { 
    out.println(lengthValues); 
}catch (IOException e) { 
    System.err.println(e); 
} 
+0

기본적으로 파일을 쓸 때 JVM은 쓰기 작업을 잠금과 동기화하여 다른 사용자가 동시에 쓸 수 없도록합니다. 이러한 종류의 모니터링 작업은 쓰기 기능을 평소보다 약간 느리게 만듭니다. – Jango

+0

프로그램이 반복적으로 파일을 열고 닫습니까? 파일 열기가 느립니다. – immibis

답변

0

표시 한 코드는 한 줄만 씁니다.

반복적으로 호출하는 경우 가장 자주 발생하는 문제는 동일한 파일을 여러 번 반복하여 열고 닫는 것입니다. 파일 을 한 번 열고을 열면 많은 성능을 얻을 수 있습니다.

그렇더라도 초당 2-4Kb는 예기치 않게 느립니다. 아마도 그것은 SSD 및/또는 Windows SSD 드라이버의 특성으로 인해 발생합니다.