System.Collections.Immutable 네임스페이스

The System.Collections.Immutable namespace contains interfaces and classes that define immutable collections. The System.Collections.Immutable namespace contains interfaces and classes that define immutable collections.

클래스

ImmutableArray

변경할 수 없는 배열을 만드는 메서드를 제공합니다. 즉, 배열을 만든 후에는 변경할 수 없습니다.Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableArray<T>.Builder

추가 메모리 할당 없이 ImmutableArray<T> 인스턴스로 변환할 수 있는 쓰기 가능한 배열 접근자입니다.A writable array accessor that can be converted into an ImmutableArray<T> instance without allocating extra memory.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableDictionary

ImmutableDictionary<TKey,TValue> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableDictionary<TKey,TValue> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableDictionary<TKey,TValue>.Builder

메모리 할당 없이 변경되고, 변경할 수 없는 해시 맵 인스턴스를 매우 효율적으로 생성하거나 빌드할 수 있는 해시 맵을 나타냅니다.Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableDictionary<TKey,TValue>

순서가 지정되지 않은 변경할 수 없는 키/값 컬렉션을 나타냅니다.Represents an immutable, unordered collection of keys and values.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableHashSet

ImmutableHashSet<T> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableHashSet<T> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableHashSet<T>.Builder

메모리 할당 없이 변경되고, 변경할 수 없는 해시 집합 인스턴스를 매우 효율적으로 생성하거나 빌드할 수 있는 해시 집합을 나타냅니다.Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableHashSet<T>

변경할 수 없는 정렬되지 않은 해시 집합을 나타냅니다.Represents an immutable, unordered hash set.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableInterlocked

변경할 수 없는 컬렉션에 대한 연동된 교환 메커니즘을 포함합니다.Contains interlocked exchange mechanisms for immutable collections.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableList

ImmutableList<T> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableList<T> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableList<T>.Builder

메모리 할당 없이 변경되고, 변경할 수 없는 목록 인스턴스를 매우 효율적으로 생성하거나 빌드할 수 있는 목록을 나타냅니다.Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableList<T>

인덱스로 액세스할 수 있는 강력한 형식의 개체 목록인 변경할 수 없는 목록을 나타냅니다.Represents an immutable list, which is a strongly typed list of objects that can be accessed by index.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableQueue

ImmutableQueue<T> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableQueue<T> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableQueue<T>

변경할 수 없는 큐를 나타냅니다.Represents an immutable queue.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedDictionary

ImmutableSortedDictionary<TKey,TValue> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableSortedDictionary<TKey,TValue> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedDictionary<TKey,TValue>.Builder

메모리 할당 없이 변경되고, 변경할 수 없는 정렬된 사전 인스턴스를 매우 효율적으로 생성하거나 빌드할 수 있는 정렬된 사전을 나타냅니다.Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedDictionary<TKey,TValue>

변경할 수 없는 정렬된 사전을 나타냅니다.Represents an immutable sorted dictionary.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedSet

ImmutableSortedSet<T> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableSortedSet<T> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedSet<T>.Builder

메모리 할당 없이 변경 가능하고 변경할 수 없는 정렬된 집합을 효율적으로 조작하거나 작성하는 정렬된 집합을 나타냅니다.Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedSet<T>

변경할 수 없는 정렬된 집합 구현을 나타냅니다.Represents an immutable sorted set implementation.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableStack

ImmutableStack<T> 클래스의 인스턴스에 대한 초기화 메서드 집합을 제공합니다.Provides a set of initialization methods for instances of the ImmutableStack<T> class.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableStack<T>

변경할 수 없는 스택을 나타냅니다.Represents an immutable stack.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

구조체

ImmutableArray<T>.Enumerator

배열 열거자입니다.An array enumerator.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableArray<T>

변경할 수 없는 배열을 나타냅니다. 즉, 배열을 만든 후에는 변경할 수 없습니다.Represents an array that is immutable; meaning it cannot be changed once it is created.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableDictionary<TKey,TValue>.Enumerator

메모리를 할당하지 않고 변경할 수 없는 사전의 내용을 열거합니다.Enumerates the contents of the immutable dictionary without allocating any memory.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableHashSet<T>.Enumerator

메모리를 할당하지 않고 변경할 수 없는 해시 집합의 내용을 열거합니다.Enumerates the contents of the immutable hash set without allocating any memory.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableList<T>.Enumerator

이진 트리의 내용을 열거합니다.Enumerates the contents of a binary tree.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableQueue<T>.Enumerator

메모리를 할당하지 않고 변경할 수 없는 큐의 내용을 열거합니다.Enumerates the contents of an immutable queue without allocating any memory.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedDictionary<TKey,TValue>.Enumerator

이진 트리의 내용을 열거합니다.Enumerates the contents of a binary tree.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableSortedSet<T>.Enumerator

이진 트리의 내용을 열거합니다.Enumerates the contents of a binary tree.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

ImmutableStack<T>.Enumerator

메모리를 할당하지 않고 변경할 수 없는 스택의 내용을 열거합니다.Enumerates the contents of an immutable stack without allocating any memory.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

인터페이스

IImmutableDictionary<TKey,TValue>

키/값 쌍의 변경할 수 없는 컬렉션을 나타냅니다.Represents an immutable collection of key/value pairs.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

IImmutableList<T>

수정할 수 없는 요소의 목록을 나타냅니다.Represents a list of elements that cannot be modified.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

IImmutableQueue<T>

개체의 변경할 수 없는 선입선출(FIFO) 컬렉션을 나타냅니다.Represents an immutable first-in, first-out collection of objects.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

IImmutableSet<T>

집합의 새 인스턴스를 만드는 방식으로만 수정할 수 있는 요소 집합을 나타냅니다.Represents a set of elements that can only be modified by creating a new instance of the set.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

IImmutableStack<T>

변경할 수 없는 LIFO(후입선출) 방식의 컬렉션을 나타냅니다.Represents an immutable last-in-first-out (LIFO) collection.

NuGet 패키지: System.Collections.Immutable(변경할 수 없는 컬렉션 정보 및 설치 방법)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

설명

변경할 수 없는 컬렉션을 사용 하 여 다음을 수행할 수 있습니다.With immutable collections, you can:

  • 소비자가 컬렉션을 변경 하지 않도록 보장할 수 있는 방식으로 컬렉션을 공유 합니다.Share a collection in a way that its consumer can be assured that the collection never changes.

  • 다중 스레드 애플리케이션에서 암시적 스레드 보안을 제공합니다(컬렉션에 액세스하는 데 잠금이 불필요함).Provide implicit thread safety in multi-threaded applications (no locks required to access collections).

  • 함수형 프로그래밍 방법을 따릅니다.Follow functional programming practices.

  • 열거 하는 동안 컬렉션을 수정 하 고 원래 컬렉션이 변경 되지 않도록 합니다.Modify a collection during enumeration, while ensuring that the original collection does not change.

변경할 수 없는 컬렉션 클래스는 .NET Core에서 사용할 수 있지만 .NET Framework 배포 된 핵심 클래스 라이브러리의 일부가 아닙니다.The immutable collection classes are available with .NET Core, however they're not part of the core class library distributed with the .NET Framework. NuGet을 통해 .NET Framework 4.5부터 사용할 수 있습니다.They're available starting with the .NET Framework 4.5 via NuGet.

NuGet을 통해 변경할 수 없는 컬렉션을 설치 하려면 다음을 수행 합니다.To install the immutable collections via NuGet:

  1. Visual Studio에서 프로젝트를 열고 프로젝트 메뉴에서 NuGet 패키지 관리 를 선택 합니다.Open your project in Visual Studio and choose Manage NuGet Packages from the Project menu.

  2. 필요에 따라 시험판 포함 확인란을 선택 합니다.Optionally, select the Include prerelease checkbox. 이 옵션은 사용할 수 있게 되 면 변경할 수 없는 클래스의 새 시험판 버전에 대 한 액세스를 제공 합니다.This option will give you access to new prerelease versions of the immutable classes, as they become available.

  3. 검색 상자를 사용 하 여 변경할 수 없는 패키지를 찾습니다.Use the Search box to locate the System.Collections.Immutable package.

  4. 왼쪽 창에서 변경할 수 없는 패키지를 선택 합니다.In the left pane, select the System.Collections.Immutable package. 오른쪽 창에서 원하는 버전을 선택 하 고 설치를 선택 합니다.In the right pane, select the desired version and then choose Install.

위에 설명 된 설치 단계는 Visual Studio 2015에 대 한 것입니다.The installation steps described above are for Visual Studio 2015. 다른 버전의 Visual Studio에서는 UI (사용자 인터페이스)의 차이로 인해 단계가 약간 다를 수 있습니다.For other versions of Visual Studio, the steps might be slightly different because of differences in the user interface (UI).