Является ли закрытие и повторное открытие экземпляров Realm вредными для производительности?

При использовании SQLite у меня обычно есть один экземпляр SQLiteOpenHelper для каждого приложения, и я никогда не закрываю его, поскольку его база данных постоянно используется многими другими классами, и закрытие / повторное открытие будет медленнее и сложнее.

Сейчас я играю с Realm и планирую получать доступ к экземплярам Realm только из объектов доступа к данным. Каждый звонок будет сделан из рабочего потока.

Я читал примеры, и они обычно вызывают getInstance / close для каждого действия или фоновой задачи. Поскольку Realm сохраняет данные в файле, подобном SQLite, целесообразно ли вызывать getInstance / close для каждой операции? Я имею в виду, будет звонитьclose на самом деле закрыть соединение с файлом и, таким образом, сделать следующийgetInstance звонить медленнее? Должен ли я кэшировать экземпляр Realm на уровне приложения и вместо этого внедрить его в DAO?

Ответы на вопрос(1)

Ваш ответ на вопрос