2017-05-12 13 views
4

Realm.getDefaultInstance()onCreateメソッドActivityに電話し、(または対応する発表者の方法で)Realmインスタンスのcloseを呼び出す推奨が多くあります。リソースを試してみることでRealmを使用することをお勧めしますか?

try (final Realm realm = Realm.getDefaultInstance()) { 
    // do stuff 
} 

なぜクリーナー:

しかし、私にとってJavaの試み-と資源構文を使用するようにきれいでしょうか? IMOでは、realmインスタンスの狭い範囲を管理する方が簡単です。ライフサイクルの一瞬でインスタンスを取得し、別のインスタンスでインスタンスを終了すると、C++で私は悲しい時にdeleteを呼び出すことを心配しなくてはなりませんでした。

質問:このようにRealmを使用するのは悪い習慣ですか?チュートリアルには何も言及していないのはなぜですか?

答えて

6

このようにRealmを使用するのは悪い習慣ですか?

いいえ、バックグラウンドスレッドにはお勧めしません。

https://realm.io/docs/java/latest/#closing-realm-instancesの公式ドキュメントを参照してください。 UIスレッド、onCreate()/onDestroy()については


ローカルレルムのインスタンスを閉じた場合、それにバインドされている結果が無効化になるので、お勧めします。レルムファイル内の結果への接続を提供するには、レルムを開く必要があります。

関連する問題