IO에 관한 연구를하고 있었는데 다음과 같은 버퍼링 기술에 대한 기사를 읽었습니다. 디스크 액세스를 최소화하고 기본 운영 체제에서 작업하기 위해 버퍼링 기술은 모든 읽기 작업으로 디스크에서 직접 데이터를 읽는 대신 청크 방식으로 데이터를 읽는 임시 버퍼를 사용합니다.파일 읽기와 성능 최적화에 관해서
실시 예는 완충제를 사용하지 않고 완충 처리하여 제공 하였다. 버퍼링
try
{
File f = new File("Test.txt");
FileInputStream fis = new FileInputStream(f);
int b; int ctr = 0;
while((b = fis.read()) != -1)
{
if((char)b== '\t')
{
ctr++;
}
}
fs.close();
// not the ideal way
} catch(Exception e)
{}
: 버퍼링없이
는
try
{
File f = new File("Test.txt");
FileInputStream fis = new FileInputStream(f);
BufferedInputStream bs = new BufferedInputStream(fis);
int b;
int ctr = 0;
while((b =bs.read()) != -1)
{
if((char)b== '\t')
{
ctr++;
}
}
fs.close(); // not the ideal way
}
catch(Exception e){}
결론이었다 :
Test.txt was a 3.5MB file
Scenario 1 executed between 5200 to 5950 milliseconds for 10 test runs
Scenario 2 executed between 40 to 62 milliseconds for 10 test runs.
더 그 자바에서이 작업을 수행하는 다른 방법이 있나요? 또는 다른 방법/기법을 사용하여 더 나은 성능을 제공 할 수 있습니까?
코드 서식 지정 ... HORROR! 아니요, 코드를 들여 쓰기 할 수 있습니까? 당신의 코드를 읽으려고 당신을 도우려는 사람들에게 성가시다. 감사! – thatidiotguy