[c#] ImmutableHashSet 클래스
ImmutableHashSet
클래스는 .NET에서 제공하는 불변(Immutable)한 집합을 나타내는 클래스입니다.
특징
ImmutableHashSet
는 집합 요소를 변경할 수 없습니다. 요소의 추가, 제거 또는 변경이 불가능합니다.- 요소의 추가나 제거 시, 새로운
ImmutableHashSet
인스턴스가 반환됩니다. ImmutableHashSet
는HashSet
와 비슷하지만, 변경 불가능한 특성을 가집니다.- 멀티스레딩 환경에서 안전하게 사용될 수 있습니다.
- 성능 최적화를 위한 내부 구현이 있어서, 작은 변경으로도 새로운 인스턴스를 생성하므로 메모리 공간의 낭비가 적습니다.
예시
var set1 = ImmutableHashSet<string>.Empty; // 빈 집합 생성
var set2 = set1.Add("apple"); // "apple" 요소 추가
var set3 = set2.Add("banana"); // "banana" 요소 추가
var set4 = set3.Remove("apple"); // "apple" 요소 제거
ImmutableHashSet
는 불변성과 스레드 안전성을 제공하여 안정적이고 예측 가능한 프로그래밍 환경을 제공합니다.
더 많은 정보는 MSDN 문서에서 확인할 수 있습니다.