Firebase C ++ SDK如何为DatabaseReference和DatabaseSnapshot分配内存?

时间:2018-10-22 13:49:08

标签: android c++ firebase firebase-realtime-database sdk

今天,我们使用Firebase C ++ SDK,我想改善从Firebase向应用程序实体类加载数据的方式,今天我们遍历DatabaseSnapshot并填充要在Android APP中使用的实体类,但是我认为这给了我们一个从Firebase到我们的APP的过程缓慢,数据转移过多。

今天使用的算法是:

  1. 在/ command / categories中设置“ loadData”值
  2. 在/ command / categories中将值更改更改为“ finished”(完成)
  3. 完成后,数据到达/ categories
  4. 然后,我们循环/ categories快照并根据这些值构造实体

我认为可以在内存消耗方面改进此算法,但是请确保我需要了解Firebase C ++ SDK如何分配内存。

我的强项是,DatabaseReference比DatabaseSnapshot读取和更新值更快,因为我理解DatabaseSnapshot是数据的副本,而DatabaseReference是该数据的引用,那么如果我更改Entity类以直接使用DatabaseReference而不是刚从Snapshot获取并在Entity上进行设置,我可以改善我的应用程序内存消耗,然后我想将我的应用程序实体更改为具有DatabaseReference,并且每次使用set / get时,我都会使用该DatabaseReference来设置/获取类局部变量。

有人知道更好的方法吗?

TIA 克洛维斯

0 个答案:

没有答案