CollectionSynchronizationCallback Delegát
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Delegování pro zpětné volání v EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback)nástroji
public delegate void CollectionSynchronizationCallback(IEnumerable collection, object context, Action accessMethod, bool writeAccess);
type CollectionSynchronizationCallback = delegate of IEnumerable * obj * Action * bool -> unit
Parametry
- collection
- System.Collections.IEnumerable
Kolekce, která byla předána do EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback).
- context
- System.Object
Objekt kontextu nebo zámku, který byl předán do objektu EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback).
- accessMethod
- System.Action
Akce, která přečte nebo upraví collection
.
- writeAccess
- System.Boolean
Hodnota, která určuje, jestli je v systému vyžadován přístup k zápisu accessMethod
.
Poznámky
Vývojáři aplikací implementují metodu CollectionSynchronizationCallback a předávají ji EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) metodě, aby umožnili správný vícevláknový přístup k collection
. Po povolení synchronizace Xamarin. Forms rozhraní předává accessMethod
implementaci CollectionSynchronizationCallback vývojáře aplikace pokaždé, když rozhraní potřebuje k úpravě kolekce v prostředí s více vlákny. Implementace vývojáře aplikace by se měla rozhodnout na základě objektu context
(což může být pouze zamykání objektu nebo objektu, na kterém se nachází kolekce) a hodnoty parametru writeAccess
, zda při lock
volání accessMethod
.