fun RealmModel.isLoaded(): Boolean
이 RealmObject를 찾는 데 사용된 쿼리가 완료되었는지 확인합니다.
io.io와 같은 비동기 메서드 . 영역.RealmQuery.findFirstAsync RealmQuery의 향후 결과를 나타내는 RealmObject를 반환합니다. 이 점에서 java.util.concurrent.Future 와 유사하다고 볼 수 있습니다.
isLoaded()
이(가) true
을(를) 반환하면 이 객체는 쿼리에서 쿼리 매개변수와 일치하는 객체를 찾지 못했더라도 쿼리 결과를 나타냅니다. 이 경우 RealmObject는 null
객체가 됩니다.
"Null" 객체는 null
을 나타냅니다. 접근자가 호출되면 예외가 발생하므로 메서드를 호출하기 전에 isValid도 확인하는 것이 중요합니다. 일반적인 패턴은 다음과 같습니다.
val person = realm.where<Person>().findFirstAsync()
person.isLoaded() // == false
person.addChangeListener { p ->
p.isLoaded() // always true here
if(p.isValid()) {
// It is safe to access this person.
}
}
동기 RealmObject는 정의상 블로킹이므로 이 메서드는 항상 true
을(를) 반환합니다. 이 메서드는 관리되지 않는 객체(Realm 외부에서 생성됨)에 대해 호출하면 true
을(를) 반환합니다.
Return
true
쿼리가 완료되면 false
, 쿼리가 진행 중이면 을 반환합니다.
다음도 참조하세요.