领域更新异步缓慢

时间:2018-06-01 10:18:53

标签: android realm

我在异步交易中更新了我的对象(一个有40-50个字段的对象,但我只更新了5-6个)。

为什么,事务的commit(我的意思是从执行的最后一行到onSuccess()调用的时间)大约需要5秒钟。

我只更新一个对象而只更新一些字段。我做错了什么?

这是我的代码

        realm.executeTransactionAsync(new Realm.Transaction() {
            @Override
            public void execute(Realm realm) {
                Intervention i = realm.where(Intervention.class).equalTo("ID", openedIntervention.getInterventionID()).findFirst();
                if (i != null) {
                    i.setULTIMA_LETTURA_VECCHIO_MISURATORE(etOldMeterReading.getText() == null ? null : etOldMeterReading.getText().toString());
                    i.setLAST_UPDATE(Calendar.getInstance().getTime());
                    i.setMISURATORE_INSTALLATO_ID(etOldMeter.getTag() == null ? null : etOldMeter.getTag().toString());
                    if (etOldMeter.getTag() == null || etOldMeter.getTag().toString().isEmpty() || etOldMeter.getTag().toString().equals(RuntimeHelper.emptyUUIDString)) {
                        i.setMISURATORE_INSTALLATO(null);
                    }
                }
            }
        }, new Realm.Transaction.OnSuccess() {
            @Override
            public void onSuccess() {
                Log.d(TAG, "Fine save");
                if (alsoLoad)
                    loadData();

            }
        }, new Realm.Transaction.OnError() {
            @Override
            public void onError(@NonNull Throwable error) {
                Log.d("TAG", "MSG", error);
                Toast.makeText(getActivity(), "Errore durante il salvataggio", Toast.LENGTH_SHORT).show();
            }
        });

这应该是一个非常简单的查询,但我不知道阻止操作的来源。

全部谢谢

0 个答案:

没有答案