BindingBase.EnableCollectionSynchronization メソッド

定義

callbackcontext を使用して、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
IEnumerable

読み込まれるか更新されるコレクションです。

context
Object

callback に渡されるコンテキストまたはロック オブジェクトです。 null でもかまいません。

callback
CollectionSynchronizationCallback

同期のコールバックです。

注釈

アプリケーション開発者は、 を実装 callback して メソッドに EnableCollectionSynchronization(IEnumerable, Object, CollectionSynchronizationCallback) 渡して、 への正しいマルチスレッド アクセスを collection有効にします。 同期が有効になった後、Xamarin.Forms フレームワークは、contextboolマルチスレッド環境でコレクションを変更する必要があるたびに、書き込みアクセスが必要かどうかを示す アクセスメソッド と をアプリケーション開発者のCollectionSynchronizationCallback実装に渡します。 アプリケーション開発者の実装では、 オブジェクト (単にロック オブジェクトまたはコレクションが存在するオブジェクト) と パラメーターのboolwriteAccess値に基づいてcontext、を呼び出accessMethodす際に を決定するlock必要があります。

Xamarin.Forms は への弱い参照を collection保持しているため、アプリケーション開発者は ガベージ コレクションを支援するために を呼び出す DisableCollectionSynchronization(IEnumerable) 必要はありません。

適用対象