我希望使用rxjava Observable在Retrofit中处理分页。我遵循另一个问题中的建议。
我需要获取超过100个页面,但是在第20页左右链条失败并且停止了对可观察对象的任何进一步订阅,日志如下所示:
04-04 04:12:11.766 2951-3012/com.example.app I/dalvikvm﹕ threadid=28: stack overflow on call to Ljava/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater;.compareAndSet:ZLJJ
04-04 04:12:11.766 2951-3012/com.example.app I/dalvikvm﹕ method requires 56+20+32=108 bytes, fp is 0x94b52350 (80 left)
04-04 04:12:11.766 2951-3012/com.example.app I/dalvikvm﹕ expanding stack end (0x94b52300 to 0x94b52000)
04-04 04:12:11.766 2951-3012/com.example.app I/dalvikvm﹕ Shrank stack (to 0x94b52300, curFrame is 0x94b548dc)
有人知道为什么会发生这种情况吗?
更新:我知道这是由于递归引起的,但是有没有更优雅的处理分页与retrofit和rxjava结合的方法?