語言

MenuItemCollection.SyncRoot 屬性

定義

取得一個物件,可以用來同步存取該 MenuItemCollection 物件。

public:
 property System::Object ^ SyncRoot { System::Object ^ get(); };
public object SyncRoot { get; }
member this.SyncRoot : obj
Public ReadOnly Property SyncRoot As Object

屬性值

一個 Object 可以用來同步存取 MenuItemCollection的 。

實作

備註

此 SyncRoot 特性提供物件的同步版本 MenuItemCollection ,可用於同步(執行緒)程式碼。

注意事項

IsSynchronized此類別的性質總是回傳 false,表示該MenuItemCollection類別未同步(非執行緒安全)。

同步程式碼必須對 SyncRoot 集合的 MenuItemCollection 物件執行操作,而非直接對 MenuItemCollection 物件本身。 這確保了從其他物件衍生出的集合的正確運作。 具體來說,它會與可能同時修改 MenuItemCollection 該物件的其他執行緒保持適當的同步。

Note

此實作中回傳的物件是 ArrayList 用來儲存 MenuItem 集合中物件的物件。

透過集合列舉本質上不是安全線程的程式。 即使集合已同步,其他執行緒仍可能修改該集合,導致列舉器拋出例外。 若要保證列舉期間的線程安全性,您可以在整個列舉期間鎖定集合,或攔截其他線程所做的變更所產生的例外狀況。

欲了解更多關於該性質的 SyncRoot 資訊,請參閱 SyncRoot 介面的 ICollection 性質。

適用於

另請參閱