IsValid
публичный финальный логический isValid ()
Проверяет, является ли RealmObject допустимым для использования, т. Е. RealmObject не был удален и область не была закрыта. Он всегда будет возвращать true для неуправляемых объектов.
Две вещи делают недействительным RealmObject:
- закрытие экземпляра Realm, которому он принадлежит
и удаление объекта в любом потоке (если вы находитесь на автообновлении
петельная нить)
IsLoaded
публичный финальный логический isLoaded ()
Проверяет, завершен ли запрос, использованный для поиска этого RealmObject.
Асинхронные методы, такие как RealmQuery.findFirstAsync (), возвращают RealmObject, который представляет будущий результат RealmQuery. В этом отношении его можно считать похожим на будущее.
Когда isLoaded () возвращает true, объект представляет результат запроса, даже если в запросе не найдено ни одного объекта, соответствующего параметрам запроса. В этом случае RealmObject станет «нулевым» объектом.
isManaged
public static boolean isManaged (E object)
Проверяет, управляется ли этот объект Царством. Управляемый объект - это просто оболочка вокруг данных в базовом файле Realm. В потоках Looper управляемый объект будет обновляться в реальном времени, поэтому он всегда указывает на последние данные. Можно зарегистрировать прослушиватель изменений, используя addChangeListener (RealmModel, RealmChangeListener), чтобы получать уведомления, когда происходят изменения. Управляемые объекты ограничены потоками, поэтому к ним нельзя получить доступ из других потоков, кроме того, который их создал.
Экземпляры объектов Realm могут быть управляемыми или неуправляемыми.
Управляемые объекты сохраняются в Realm, всегда актуальны и ограничены потоками. Как правило, они более легкие, чем неуправляемая версия, поскольку они занимают меньше места в куче Java.
Неуправляемые объекты похожи на обычные объекты Java, они не сохраняются и не будут обновляться автоматически. Они могут свободно перемещаться между нитями.
Подробнее см .: https://realm.io/docs/java/4.3.3/api/io/realm/RealmObject.html