我想知道是否有人可以指出我的文档来/澄清何时创建或销毁会议室数据库实例。另外,您将如何有效地打开/关闭它?
如果我有一个RoomDatabase
对象,可以通过匕首注入到演示者中,那很酷,然后我可以访问各种Daos吗?我担心对象会徘徊并占用内存。
答案 0 :(得分:0)
您可以注入RoomDatabase
Singleton类,而不是将DataManager
注入到演示者中。
此DataManager
可以将WeakReferences
保留到DAO
s中。根据您尝试访问数据的时间,首先检查是否在内存中将其传递给演示者,如果没有,则可以懒洋洋地访问RoomDB
以将数据加载到内存中,然后传递给演示者
通过这种方式,可以访问/管理您的数据的单一真相来源。