Freigeben über


CollectionSynchronizationCallback Delegat

Definition

public delegate void CollectionSynchronizationCallback(IEnumerable collection, object context, Action accessMethod, bool writeAccess);
type CollectionSynchronizationCallback = delegate of IEnumerable * obj * Action * bool -> unit

Parameter

collection
System.Collections.IEnumerable

Die Sammlung, die an EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) übergeben wurde.

context
System.Object

Das Context- oder Lock-Objekt, das an EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) übergeben wurde.

accessMethod
System.Action

Eine Aktion, die collection liest oder ändert.

writeAccess
System.Boolean

Ein Wert, der angibt, ob accessMethod Schreibzugriff erfordert.

Hinweise

Anwendungsentwickler implementieren eine CollectionSynchronizationCallback Methode und übergeben sie an die -Methode, um den EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) richtigen Multithreadzugriff auf zu collectionermöglichen. Nachdem die Synchronisierung aktiviert wurde, wird das Xamarin verwendet. Forms Framework wird jedes Mal an die Implementierung des CollectionSynchronizationCallback Anwendungsentwicklers übergebenaccessMethod, wenn das Framework die Sammlung in einer Multithreadumgebung ändern muss. Die Implementierung des Anwendungsentwicklers sollte basierend auf dem context -Objekt (das nur ein sperrendes Objekt oder das Objekt sein kann, auf dem sich die Auflistung befindet) und dem Wert des writeAccess Parameters entscheiden, ob oder lock nicht beim Aufrufen accessMethodvon .

Gilt für: