Docs Menu
Docs Home
/ /
Atlas Device SDK
/ / /

Enum ImportFlag

項目一覧

  • io.realm
  • 列挙定数の概要
  • メソッドの概要
  • 継承されたメソッド
  • 列挙定数の詳細
  • CHECK_SAME_VALUES_BEFORE_SET
  • メソッドの詳細
  • valueOf
  • values
java.lang.Object
io.realm.ImportFlag

このクラスでは、オブジェクト全体を保存するときに Realm にデータを保存する方法について説明します。

Tip

以下も参照してください。

列挙定数と説明

CHECK_SRAM_VALUES_B詳しく希望_設定

このフラグを有効にすると、Realm にすでに存在する値と同じ値が含まれているフィールドは、Realm ファイルに書き込まれません。

修飾子と型
メソッドと説明
public static ImportFlag
public static ImportFlag
  • クラス java.lang.Object から継承されたメソッド :getClasshashCodeequalsclonetoStringnotifynotifyAllwaitwaitwaitfinalize

  • クラス java.lang.Enum から継承されたメソッド :nameordinaltoStringequalshashCodeclonecompareTogetDeclaringClassvalueOffinalize

public static final ImportFlag

このフラグを有効にすると、フィールドにすでに存在する値と同じ値が含まれている場合は、フィールドは Realm ファイルに書き込まれません。ローカル Realm の場合、これは変更リスナーにのみ影響し、次のフィールドへの変更を報告しません。書込み (write) されていない。

同期された Realm の場合、これはサーバーにも影響します。サーバー Realm にアップロードおよびマージする変更が少ないため、パフォーマンスが向上します。

また、サーバーがさまざまなデバイスからの変更をマージする方法にも影響します。 Realm は、オブジェクト内の個々のフィールドをマージするときに last-write-wins アプローチを使用するため、フィールドが書き込まれない場合は、変更された他のフィールドよりも「古い」と見なされます。

例:

  1. サーバーは、(フィールド A = 1、フィールド B = 1)で起動します

  2. デバイス 1 の書込み (write)(フィールド A = 2、フィールド B = 2)。

  3. デバイス 2 は(フィールド A = 3、フィールド B = 1)を書き込みますが、(フィールド B = 1)は無視します。これは、この時点での Realm ファイル内の 値であるためです。

  4. デバイス 1 は、その変更をサーバーにアップロードします(フィールド A = 2、フィールド B = 2)。 次に、デバイス 2 はその変更をアップロードします。 前回の書込み保証 (write-win) により、サーバーのバージョンは (フィールド A = 3、フィールド B = 2)になりました。

これは通常、最終オブジェクトが両方のデバイスの最新の変更をマージした結果であるため、通常必要な動作ですが、オブジェクト内のすべてのフィールドがアトミックな単位と見なされる場合は、すべてのフィールドが保証されるため、このフラグを設定しないでくださいが設定されているため、データがサーバーに送信されるときの「経過時間」は同じになります。

public static ImportFlag valueOf (
String name
)
public static ImportFlag values ()

戻る

FrozenPendingRow