0
我聽說Realm和主線程一樣快。 但是有時,當我插入或更新我的數據(甚至只是一個文本!)時,它會導致ANR錯誤,並且無法執行任何操作。 我不知道爲什麼會發生這種情況。因爲也沒有錯誤信息。領域導致ANR錯誤,沒有錯誤消息。
我已經在調試模式下檢查,以便發現系統,直到剛剛
realm.executetransaction執行
,然後,消失斷點和無關...... 是否有任何人誰有像我這樣的問題..? 請幫助
我聽說Realm和主線程一樣快。 但是有時,當我插入或更新我的數據(甚至只是一個文本!)時,它會導致ANR錯誤,並且無法執行任何操作。 我不知道爲什麼會發生這種情況。因爲也沒有錯誤信息。領域導致ANR錯誤,沒有錯誤消息。
我已經在調試模式下檢查,以便發現系統,直到剛剛
realm.executetransaction執行
,然後,消失斷點和無關...... 是否有任何人誰有像我這樣的問題..? 請幫助
在建議使用異步事務,而從UI線程在交易書面境界,寫作有時會阻塞境界文檔。這可能會導致主線程中的ANR。請在此處閱讀有關異步交易的更多信息:Realm docs。
下面是異步事務從文檔樣品例如:
RealmAsyncTask transaction = realm.executeTransactionAsync(new
Realm.Transaction() {
@Override
public void execute(Realm bgRealm) {
User user = bgRealm.createObject(User.class);
user.setName("John");
user.setEmail("[email protected]");
}
}, null);
包括源代碼 –
如果您的後臺線程的事務需要很長的時間,然後對UI線程打開事務將阻塞UI線程。也有可能你的代碼中有人使用'realm.copyFromRealm()',儘管他們不應該這樣做。 – EpicPandaForce