CollectionSynchronizationCallback Delegat
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Delegat für einen Rückruf in EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback).
public delegate void CollectionSynchronizationCallback(IEnumerable collection, object context, Action accessMethod, bool writeAccess);
type CollectionSynchronizationCallback = delegate of IEnumerable * obj * Action * bool -> unit
Parameter
- collection
- IEnumerable
Die Sammlung, die an EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) übergeben wurde.
- context
- Object
Das Context- oder Lock-Objekt, das an EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) übergeben wurde.
- accessMethod
- Action
Eine Aktion, die collection
liest oder ändert.
- writeAccess
- Boolean
Ein Wert, der angibt, ob accessMethod
Schreibzugriff erfordert.
Hinweise
Anwendungsentwickler implementieren eine CollectionSynchronizationCallback Methode und übergeben sie an die EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) -Methode, um den richtigen Multithreadzugriff auf zu collection
ermöglichen. Nachdem die Synchronisierung aktiviert wurde, übergibt accessMethod
das Xamarin.Forms-Framework jedes Mal, wenn das Framework die Sammlung in einer Multithreadumgebung ändern muss, an die Implementierung des CollectionSynchronizationCallback Anwendungsentwicklers. 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 bei lock
aufruft accessMethod
oder nicht.