for문을 사용할 때 그냥 사용하면 된다라는 생각은 버려야 할것이다.
간단히 예를 들자면,
for(int i=0; i<cnt; i++) {
간단히 예를 들자면,
for(int i=0; i<cnt; i++) {
MyClass mc = new Myclass();
mc.total += i;
vector.add(mc.total);
mc.total += i;
vector.add(mc.total);
}
그냥 간과 하고 넘어 갈 수 있겠지만, 결과적으로 성능을 저하시키는 요인이 된다.
MyClass 라는 객체를 cnt번 생성 하면서, 같은일을 하는 객체의 메모리를 n개 생성 하게 되는 결과를 낳는다.
그 만큼 GC도 많이 일어 나게 되며, 메모리를 낭비하는 꼴이 될것이다.
누가 이렇게 짤것이냐 생각 할 수도 있겠지만, 이런 소스가 나오지 않도록 잠깐이라도 신경을 써야 할 것이다.
for(int i=0; i<ms.size(); i++) {
그냥 간과 하고 넘어 갈 수 있겠지만, 결과적으로 성능을 저하시키는 요인이 된다.
MyClass 라는 객체를 cnt번 생성 하면서, 같은일을 하는 객체의 메모리를 n개 생성 하게 되는 결과를 낳는다.
그 만큼 GC도 많이 일어 나게 되며, 메모리를 낭비하는 꼴이 될것이다.
누가 이렇게 짤것이냐 생각 할 수도 있겠지만, 이런 소스가 나오지 않도록 잠깐이라도 신경을 써야 할 것이다.
for(int i=0; i<ms.size(); i++) {
......
}
이런 형태로 for문에서 함수가 계속 적으로 호출이 된다면..
그 만큼 메모리도 많이 잡아 먹게 된다.
좀더 생각이 나는 내용이 있으면 더 추가를 해야 겠다.
이런 형태로 for문에서 함수가 계속 적으로 호출이 된다면..
그 만큼 메모리도 많이 잡아 먹게 된다.
좀더 생각이 나는 내용이 있으면 더 추가를 해야 겠다.
'Java' 카테고리의 다른 글
[Java] StringBuffer와 StringBuilder (0) | 2009.05.25 |
---|---|
[Java] wav파일 실행 시키기!! (1) | 2009.05.20 |
[Java] 두 날짜는 몇일 차이가 날까.. (0) | 2009.04.14 |
[Java] File Stream, StringTokenizer 간단 예제. (0) | 2009.04.02 |
[Java] DB ConnectionPool... (0) | 2009.03.31 |