Я только начинающий в программировании Android. Недавно я читал о том, как база данных комнат может возвращать текущие данные для автоматического обновления, когда в базу данных вносятся изменения. Я использую экземпляр класса viewmodel для хранения моих Livedata следующим образом
public class LogVM extends AndroidViewModel{
MasterDatabase roomDatabase;
LiveData<List<Log>> logData;
LogVM(Application application){
super(application);
roomDatabase=MasterDatabase.getInstance(application);
logData=roomDatabase.getLogDao.getAllLogs();
}
public LiveData<List<Log>> getLogData() {
return logData;
}
}
Приведенный выше код на самом деле работает нормально. Но мой вопрос: при инициализации logdata в конструкторе, мы не запускаем операцию базы данных в главном потоке? Но код компилируется и запускается без предупреждения. Может кто-нибудь объяснить, как ?? Извините, если это глупый вопрос. Но я только начинающий!