TreeNodeCollection.SyncRoot 屬性

定義

取得可用來同步處理對 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 ,可與同步處理 (執行緒) 程式碼搭配使用。

警告

IsSynchronized這個類別的 屬性一律會傳 false 回 ,這表示類別 TreeNodeCollection 不會同步處理, (不是安全線程) 。

同步處理常式代碼必須在 的物件 TreeNodeCollectionSyncRoot 執行作業,而不是直接在 TreeNodeCollection 本身上執行。 如此可確保衍生自其他物件的集合可以正常運作, 具體而言,它會與可能同時修改 TreeNodeCollection 物件的其他執行緒維持適當的同步處理。

注意

這個實作中傳回的物件是 System.Collections.ArrayList 用來將物件儲存 TreeNode 在集合中的 物件。

透過集合進行列舉在本質上並非安全執行緒程序。 即使同步處理集合,其他執行緒仍可修改集合,這會導致列舉值擲回例外狀況。 若要保證列舉過程的執行緒安全,您可以在整個列舉過程中鎖定集合,或攔截由其他執行緒的變更所造成的例外狀況。

如需 屬性的詳細資訊 SyncRoot ,請參閱 ICollection.SyncRoot 介面的 System.Collections.ICollection 屬性。

適用於

另請參閱