【发布时间】:2021-11-06 23:54:51
【问题描述】:
在 android 中执行 sqlite 数据库操作会降低我的应用程序的速度,但有什么好方法可以消除这种迟缓?我只是在单独的线程上执行数据库操作还是有其他更合适的方式?
【问题讨论】:
-
“我只是在单独的线程上执行数据库操作”——总是在后台线程上执行磁盘或网络 I/O。例如,Room 默认执行此规则。
在 android 中执行 sqlite 数据库操作会降低我的应用程序的速度,但有什么好方法可以消除这种迟缓?我只是在单独的线程上执行数据库操作还是有其他更合适的方式?
【问题讨论】:
没错,你应该这样做。如果你使用 Room,它将对你有很大帮助,因为它支持 livedata/flow,你可以从你的片段中观看,它不会在主线程中执行数据库操作。
什么是房间: https://developer.android.com/training/data-storage/room
Google 代码实验室可助您一臂之力: https://developer.android.com/codelabs/android-room-with-a-view-kotlin#0
【讨论】: