Синхронный запрос к Room на главном потоке
В приложении объявлен запрос к базе:
@Dao
interface OrderDao {
@Query("SELECT * FROM orders")
fun getAll(): List<Order>
}
И вызывается прямо при создании экрана:
val orders = orderDao.getAll()
Что произойдёт?
- Нужно разрешить запросы на главном потоке при сборке базы — для небольших таблиц это штатный способ работы
- Всё в порядке: библиотека сама уводит такие запросы в фоновый поток и возвращает результат на главный
- Приложение упадёт: синхронные запросы к базе на главном потоке запрещены по умолчанию
- Запрос выполнится, но вернёт пустой список до первой синхронизации данных с сервером
