BindingBase.EnableCollectionSynchronization 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
使用 callback
和 context
啟動 collection
上的同步處理。
public static void EnableCollectionSynchronization (System.Collections.IEnumerable collection, object context, Xamarin.Forms.CollectionSynchronizationCallback callback);
static member EnableCollectionSynchronization : System.Collections.IEnumerable * obj * Xamarin.Forms.CollectionSynchronizationCallback -> unit
參數
- collection
- System.Collections.IEnumerable
要讀取或更新的集合。
- context
- System.Object
要傳遞至 callback
的內容或鎖定物件。 可以是 null
。
- callback
- CollectionSynchronizationCallback
同步處理回呼。
備註
應用程式開發人員會實 callback
作並將它傳遞至 EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) 方法,以啟用正確的多線程存取 collection
。 啟用同步處理之後,Xamarin。Forms 架構會將訪問方法、 context
和 ,指出bool
是否需要寫入許可權,每次架構需要在多線程環境中修改集合時,應用程式開發人員的實CollectionSynchronizationCallback作。 應用程式開發人員的實作應該根據context
物件 (決定,這可能只是鎖定物件或集合所存留的物件) ,以及參數的值bool
writeAccess
,不論呼叫 時accessMethod
是否為 lock
。
因為 Xamarin。Forms 維護的collection
弱式參考,應用程式開發人員不需要呼叫 DisableCollectionSynchronization(IEnumerable) 來協助垃圾收集。