Dictionary.KeyCollection ジェネリック クラス
アセンブリ: mscorlib (mscorlib.dll 内)

<SerializableAttribute> _ Public NotInheritable Class KeyCollection Implements ICollection(Of TKey), IEnumerable(Of TKey), _ ICollection, IEnumerable
[SerializableAttribute] public sealed class KeyCollection : ICollection<TKey>, IEnumerable<TKey>, ICollection, IEnumerable
[SerializableAttribute] public ref class KeyCollection sealed : ICollection<TKey>, IEnumerable<TKey>, ICollection, IEnumerable

Dictionary.Keys プロパティは、その Dictionary 内のすべてのキーを格納した、この型のインスタンスを返します。Dictionary.KeyCollection 内のキーの順序は指定されていませんが、関連付けられている値が、Dictionary.Values プロパティから返された Dictionary.ValueCollection 内で並べられている順序と同じです。
Dictionary.KeyCollection は静的なコピーではありません。代わりに、この Dictionary.KeyCollection は、元の Dictionary のキーを参照します。そのため、Dictionary に対する変更は、Dictionary.KeyCollection にも反映されます。

System.Collections.Generic.Dictionary.KeyCollection

この型の public static (Visual Basic では Shared) メンバは、スレッド セーフです。すべてのインスタンス メンバがスレッド セーフになるかどうかは保証されていません。
コレクションが変更されない限り、Dictionary.KeyCollection では、複数の読み込み操作が同時に発生しても問題ありません。ただし、コレクションの列挙処理は、本質的にはスレッド セーフな処理ではありません。すべての列挙処理が終わるまでコレクションをロックすることにより、列挙処理でのスレッド セーフを確保できます。コレクションに対し複数のスレッドがアクセスして読み取りや書き込みを行うことができるようにするには、独自に同期化を実装する必要があります。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- Dictionary.KeyCollection ジェネリック クラスのページへのリンク