TreeNodeCollection.SyncRoot プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
TreeNodeCollection オブジェクトへのアクセスを同期するために使用できるオブジェクトを取得します。
public:
property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object
プロパティ値
Objectへのアクセスを同期するために使用できるTreeNodeCollection。
実装
注釈
SyncRoot プロパティは、同期 (スレッド) コードで使用できるTreeNodeCollectionの同期バージョンを提供します。
Caution
このクラスの IsSynchronized プロパティは常に falseを返します。これは、 TreeNodeCollection クラスが同期されていないことを示します (スレッド セーフではありません)。
コードを同期するには、SyncRoot自体ではなく、TreeNodeCollectionのTreeNodeCollection オブジェクトに対して操作を実行する必要があります。 これにより、他のオブジェクトから派生したコレクションの適切な操作が保証されます。 具体的には、 TreeNodeCollection オブジェクトを同時に変更している可能性がある他のスレッドとの適切な同期を維持します。
Note
この実装で返されるオブジェクトは、コレクション内のSystem.Collections.ArrayList オブジェクトを格納するために使用されるTreeNode オブジェクトです。
コレクションを列挙することは、本質的にスレッド セーフなプロシージャではありません。 コレクションが同期されている場合でも、他のスレッドがコレクションを変更して、列挙子が例外をスローする可能性があります。 列挙中のスレッド セーフを保証するには、列挙全体の間にコレクションをロックするか、他のスレッドによって行われた変更によって発生する例外をキャッチします。
SyncRoot プロパティの詳細については、ICollection.SyncRoot インターフェイスの System.Collections.ICollection プロパティを参照してください。