Невозможно создать асинхронный запрос во время транзакции записи: во время выполнения findAllAsync () - PullRequest
0 голосов
/ 19 сентября 2018

Мой фрагмент кода, где происходит ошибка:

private void setupList() {
    if (mRealm.isClosed()) {
        return;
    }
    mResult = mRealm.where(X.class)
            .equalTo(...)
            .findAllAsync();
    mResult.addChangeListener(mListener);
}

Ошибка:

Fatal Exception: java.lang.IllegalStateException: Cannot create asynchronous query while in a write transaction in /Users/cm/Realm/realm-java/realm/realm-library/src/main/cpp/io_realm_internal_OsResults.cpp line 252
   at io.realm.internal.OsResults.nativeStartListening(OsResults.java)
   at io.realm.internal.OsResults.addListener(OsResults.java:405)

Я прочитал о похожих ошибках в разных темах SO и пришел к выводу, что просто не могуdo addChangeListener, если транзакция не зафиксирована.Означает ли это, что я могу просто поставить beginTransaction и commitTransaction до и после mResult = mRealm.where... или мне придется обрабатывать это по-другому, поскольку я пытаюсь найти результаты асинхронными?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...