반응형
간단한 변화만으로 성능에 영향을 줄 수 있습니다.
컬렉션을 초기화할 때 초기 크기를 지정하십시오!
1. 컬렉션 초기화
컬렉션(예: List)을 초기화하면 기본 크기로 생성됩니다.
새 항목을 컬렉션에 추가할 때 .NET은 새 항목을 저장하기에 충분한 용량이 있는지 확인합니다.
충분하지 않으면 내부 용량을 두 배로 늘립니다. 이 리사이징 과정은 시간과 메모리를 소모합니다.
가능한 경우 예상 항목 수로 컬렉션을 초기화해야 합니다.
2. List 초기화
List의 경우, new List<T>()를 new List<T>(size)로 바꿈으로써 성능 향상을 얻을 수 있습니다.
이에 대한 벤치마크 결과에서 List 초기화 없이는 평균 1.7배의 성능 저하와 2.5배의 메모리 낭비가 발생했습니다.
3. HashSet 초기화
List와 유사하게, HashSet도 올바르게 초기화할 때 큰 개선을 볼 수 있습니다.
벤치마크 결과로는 HashSet을 초기화하지 않을 경우 실행 시간에서 평균 2배의 향상을, 메모리 할당에서는 애플리케이션을 3배 느리게 하는 것을 확인할 수 있습니다.
반응형
'클립보드' 카테고리의 다른 글
모든 회의 운영 지식은 회의에 가고 싶지 않다는 데서 배웠습니다. (0) | 2023.11.03 |
---|---|
팀의 과다한 노력과 낮은 성과: 원인과 해결법 (0) | 2023.11.02 |
C#으로 유니코드 문자열 길이 측정하기 (0) | 2023.10.30 |
C++ 문자열의 내부 구조: std::string 이해하기 (0) | 2023.10.30 |
상위 1% 엔지니어의 7가지 간단한 습관 (0) | 2023.10.27 |