System.Collections.Immutable 名前空間
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
変更できないコレクションを定義するインターフェイスとクラスが含まれます。
クラス
構造体
インターフェイス
IImmutableDictionary<TKey,TValue> |
キーと値のペアの変更できないコレクションを表します。 NuGet パッケージ: System.Collections.Immutable (変更できないコレクションの概要とインストール方法) |
IImmutableList<T> |
変更できない要素のリストを表します。 NuGet パッケージ: System.Collections.Immutable (変更できないコレクションの概要とインストール方法) |
IImmutableQueue<T> |
オブジェクトの変更できない先入れ先出しコレクションを表します。 NuGet パッケージ: System.Collections.Immutable (変更できないコレクションの概要とインストール方法) |
IImmutableSet<T> |
セットの新しいインスタンスを作成することによってのみ変更可能な要素のセットを表します。 NuGet パッケージ: System.Collections.Immutable (変更できないコレクションの概要とインストール方法) |
IImmutableStack<T> |
変更できない後入れ先出し (LIFO) コレクションを表します。 NuGet パッケージ: System.Collections.Immutable (変更できないコレクションの概要とインストール方法) |
注釈
変更できないコレクションを使用すると、以下のことができます。
- コレクションが変更されないように、そのコンシューマーが確実にコレクションを共有します。
- マルチスレッド アプリケーションで暗黙的なスレッド セーフを提供します (コレクションにアクセスするためにロックは不要)。
- 関数型プログラミングの方法に従います。
- 元のコレクションを維持しながら、列挙中にコレクションを変更します。
変更できないコレクション クラスは、コア .NET ライブラリの一部として使用できますが、.NET Framework と共に配布されるコア クラス ライブラリの一部ではありません。 .NET Framework 4.6.2 以降のアプリの場合、クラスは NuGet パッケージを通じて使用できます。
.NET