Невозможно создать асинхронный запрос: при добавлении прослушивателя изменений в результаты - PullRequest
0 голосов
/ 11 октября 2018

Я получаю эту ошибку:

IllegalStateException: Cannot create asynchronous query while in a write transaction

Отсюда ошибка init:

        mRealm.executeTransaction(new Realm.Transaction() {
            @Override
            public void execute(Realm realm) {
                results = realm.where(Data.class).findAll();
                results.addChangeListener(listener);
            }
        });

Есть ли какой-нибудь безопасный способ сделать то, что я делаю, убедившись, что я незапуск в «область все еще находится в состоянии транзакции записи» И «Не удается создать асинхронный запрос во время транзакции записи», пока я добавляю прослушиватель изменений в мои результаты?

Из комментария Панд:

results = realm.where(Data.class).findAll();
if (realm is not in transaction right now) {
     results.addChangeListener(listener);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...