System.Collections.Immutable Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Contient des interfaces et des classes qui définissent des collections immuables.
Classes
ImmutableArray |
Fournit des méthodes pour la création d’un tableau immuable ; ce qui signifie qu’il ne peut pas être modifié une fois créé. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableArray<T>.Builder |
Accesseur de tableau accessible en écriture qui peut être converti en une instance ImmutableArray<T> sans allouer de mémoire supplémentaire. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableDictionary |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableDictionary<TKey,TValue>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableDictionary<TKey,TValue>.Builder |
Représente une table de hachage qui mute, avec peu ou pas d’allocations de mémoire, et qui peut produire ou créer efficacement sur des instances de table de hachage. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableDictionary<TKey,TValue> |
Représente une collection immuable et non triée de clés et valeurs. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableHashSet |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableHashSet<T>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableHashSet<T>.Builder |
Représente un ensemble de hachage qui mute, avec peu ou pas d’allocations de mémoire, et qui peut produire ou créer très efficacement sur des instances de l’ensemble immuable de hachage. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableHashSet<T> |
Représente un ensemble immuable de hachage, non trié. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableInterlocked |
Contient des mécanismes d’échange verrouillés pour les collections immuables. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableList |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableList<T>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableList<T>.Builder |
Représente une liste qui mute, avec peu ou pas d’allocations de mémoire, et qui peut produire ou créer très efficacement sur les instances de liste immuable. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableList<T> |
Représente une liste immuable, qui est une liste fortement typée d’objets accessibles par index. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableQueue |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableQueue<T>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableQueue<T> |
Représente une file d’attente immuable. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableSortedDictionary |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableSortedDictionary<TKey,TValue>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableSortedDictionary<TKey,TValue>.Builder |
Représente un dictionnaire trié qui mute, avec peu ou pas d’allocations de mémoire, et qui peut produire ou créer efficacement sur des instances de dictionnaire trié. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableSortedDictionary<TKey,TValue> |
Représente un dictionnaire trié immuable. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableSortedSet |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableSortedSet<T>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableSortedSet<T>.Builder |
Représente un ensemble trié qui permet des modifications, avec peu ou pas d’allocations de mémoire, et manipule ou génère efficacement des ensembles triés immuables. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableSortedSet<T> |
Représente une implémentation de l’ensemble trié immuable. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableStack |
Fournit un ensemble de méthodes d’initialisation pour les instances de la classe ImmutableStack<T>. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
ImmutableStack<T> |
Représente une pile immuable. NuGet package: System.Collections.Immutable (à propos des collections immuables et de leur installation) |
Structures
Interfaces
Remarques
Grâce aux collections immuables, vous pouvez :
- Partagez une collection de manière à ce que son consommateur puisse être assuré que la collection ne change jamais.
- fournir une sécurité des threads implicite dans les applications multithread (aucun verrou requis pour accéder aux collections) ;
- suivre des pratiques de programmation fonctionnelles ;
- modifier une collection pendant l'énumération, sans que la collection d'origine change.
Les classes de collection immuables sont disponibles dans le cadre des bibliothèques .NET principales, mais elles ne font pas partie de la bibliothèque de classes principale distribuée avec .NET Framework. Pour les applications .NET Framework 4.6.2 et ultérieures, les classes sont disponibles via les packages NuGet.