BindingBase.EnableCollectionSynchronization Метод

Определение

Запускает синхронизацию на collection с помощью callback и context.

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 платформа передает метод доступа и bool , который указывает, contextтребуется ли доступ на запись, в реализацию CollectionSynchronizationCallback разработчика приложения каждый раз, когда платформе необходимо изменить коллекцию в многопоточной среде. Реализация разработчика приложения должна решать, исходя context из writeAccessbool объекта (который может быть просто блокирующим объектом или объектом, на котором находится коллекция) и значения параметра, следует ли использовать lock при вызове accessMethod.

Потому что Xamarin. Forms сохраняет слабую ссылку collectionна , разработчикам приложений не нужно вызывать помощь DisableCollectionSynchronization(IEnumerable) в сборке мусора.

Применяется к