领域java文档建议将领域实例与Activity
/ Fragment's
生命周期相关联,以便在创建Activity
/ Fragment
时打开/关闭领域/破坏。
假设Activity
上的用户交互触发了一堆链接的异步/基于回调的代码,最终在与Activity
相关联的领域实例上发出读/写。< / p>
如果用户在交互后立即退出活动并且领域实例作为Activity's
onDestroy
的一部分关闭,那么确保关闭实例上的事务/查询失败的好方法是什么默默地认为它是一个嵌套的回调链。
在调用任何方法之前检查领域实例是否已关闭/有效是多余的。
同时,打开一个领域实例并关闭它只是为了写/读某些东西可能会很昂贵。
避免像这样的崩溃有什么好方法?
答案 0 :(得分:1)
我认为这里的基本问题是:“如何阻止对死组件的回调?”。答案在Realm文档here中:当组件退出(onPause
,onStop
或onDestroy
)时,您必须取消注册侦听器。
如果我正确地理解了这个问题,那么这个领域是否开放的问题就是一个红鲱鱼。听众必须取消注册。