我发现 Firebase 对某些查询的执行速度很慢,即使它是针对一小组数据的。我将Log Level设置为Logger.Level.DEBUG,看看能不能在日志猫中找到一些信息。在这里,在 log cat 中,我发现在 firebase 查询开始之前有很多 GarbageCollector 调用。
W/art:暂停所有线程花费了:119.246ms W/art:暂停所有线程花费了:15.993ms I/art:后台部分并发标记清除 GC 释放 178740(5MB) 个 AllocSpace 对象,6(1210KB) 个 LOS 对象,20% 空闲,61MB/77MB,暂停 20.261ms 总计 246.362ms I/art:后台粘性并发标记清除 GC 释放 421369(15MB) 个 AllocSpace 对象,1(30KB) 个 LOS 对象,11% 空闲,63MB/71MB,暂停 3.699ms 总计 150.208ms W/art:暂停所有线程花费:38.838ms I/art:后台粘性并发标记清除 GC 释放 234760(8MB) 个 AllocSpace 对象,0(0B) 个 LOS 对象,11% 空闲,63MB/71MB,暂停 3.761ms 总计 124.938ms I/art:后台粘性并发标记清除 GC 释放 177455(6MB) 个 AllocSpace 对象,0(0B) 个 LOS 对象,8% 空闲,65MB/71MB,暂停 4.031ms 总计 109.770ms I/art:后台粘性并发标记清除 GC 释放 165051(6MB) 个 AllocSpace 对象,0(0B) 个 LOS 对象,7% …