Java 领域导致没有错误消息的ANR错误。
我听说Realm的速度和在主线程中使用的速度一样快。 但有时,当我插入或更新我的数据(甚至只是一个文本!)时,它会产生一个错误,而无需做任何事情。 我不知道为什么会这样。因为也没有错误消息 我已经检查了调试模式,所以我发现系统一直执行到 realm.executetransaction 然后,消失断点,无事可做。。。 有没有像我这样有问题的人。。?Java 领域导致没有错误消息的ANR错误。,java,android,realm,breakpoints,android-anr-dialog,Java,Android,Realm,Breakpoints,Android Anr Dialog,我听说Realm的速度和在主线程中使用的速度一样快。 但有时,当我插入或更新我的数据(甚至只是一个文本!)时,它会产生一个错误,而无需做任何事情。 我不知道为什么会这样。因为也没有错误消息 我已经检查了调试模式,所以我发现系统一直执行到 realm.executetransaction 然后,消失断点,无事可做。。。 有没有像我这样有问题的人。。? 请帮助在领域文档中,建议在从UI线程写入领域时使用异步事务,因为写入事务有时会阻塞。这可能导致主线程中出现ANR。请在此处进一步阅读异步事务: 以下
请帮助在领域文档中,建议在从UI线程写入领域时使用异步事务,因为写入事务有时会阻塞。这可能导致主线程中出现ANR。请在此处进一步阅读异步事务: 以下是文档中异步事务的示例:
RealmAsyncTask transaction = realm.executeTransactionAsync(new
Realm.Transaction() {
@Override
public void execute(Realm bgRealm) {
User user = bgRealm.createObject(User.class);
user.setName("John");
user.setEmail("john@corporation.com");
}
}, null);
包括源代码如果后台线程事务需要很长时间,那么在UI线程上打开事务将阻止UI线程。您的代码中也可能有人使用了
realm.copyFromRealm()
,尽管他们不应该这样做。