실행 속도를 측정해주는 멋쟁이 클래스 😎
System.out.print();
를 진행하는 게 시간을 많이 잡아먹는다는 얘길 들어서 테스트 해보려고 합니다.
StopWatch stopWatch = new StopWatch("Print Test");
int sum = 0;
stopWatch.start("Print");
for(int i=0; i<10; i++) {
sum += i;
System.out.println(i);
}
stopWatch.stop();
1부터 10까지 더해주는데, 그때 더해주는 값을 print 해줍니다.
System.out.println(stopWatch.shortSummary());
shortSummary()를 이용하여 짤막하게 확인할 수 있습니다
running time이 보이네요
stopWatch.start("Not Print");
for(int i=0; i<10; i++) {
sum += i;
}
stopWatch.stop();
System.out.println(stopWatch.shortSummary());
(똑같이 shorSummary() 이용!)
차이가 크죠?
System.out.println(stopWatch.prettyPrint());
prettyPrint() 함수를 이용하여 비교하면 됩니다.
얼마나 차지하는지 비교해봤는데.. 음 너무 극단적인 비교를 했나봐요 ㅎㅎ
@SpringBootTest
public class StopWatchTest {
@Test
void stop_watch_test() {
StopWatch stopWatch = new StopWatch("Print Test");
int sum = 0;
stopWatch.start("Print");
for(int i=0; i<10; i++) {
sum += i;
System.out.println(i);
}
stopWatch.stop();
sum = 0;
stopWatch.start("Not Print");
for(int i=0; i<10; i++) {
sum += i;
}
stopWatch.stop();
System.out.println(stopWatch.prettyPrint());
}
}