Android 缓存与重新计算
我正在开发一款追踪共同基金业绩的Android应用程序。该应用程序允许您创建一个投资组合来添加您的资金 这是一个共同基金应用程序(而不是股票应用程序),它每天获取一次更新的基金“价格”(每股资产净值),并重新计算投资组合(现值、当前收益率[+/-])。这种“刷新”操作非常昂贵,因为它会消耗数据和大量CPU周期 公文包XML仅包含用户输入的“静态”数据:Android 缓存与重新计算,android,performance,caching,mobile,Android,Performance,Caching,Mobile,我正在开发一款追踪共同基金业绩的Android应用程序。该应用程序允许您创建一个投资组合来添加您的资金 这是一个共同基金应用程序(而不是股票应用程序),它每天获取一次更新的基金“价格”(每股资产净值),并重新计算投资组合(现值、当前收益率[+/-])。这种“刷新”操作非常昂贵,因为它会消耗数据和大量CPU周期 公文包XML仅包含用户输入的“静态”数据: 投资组合中的基金 基金投资(购买了多少股份以及何时购买) 所有计算的“动态”数据不会在任何地方持久化。理由是这些数据在不同的情况下会发生变化
- 投资组合中的基金
- 基金投资(购买了多少股份以及何时购买)
谢谢 在必要时,您一定要缓存数据。您可以考虑使用软骨素,因为它们可以保留,只要内存可用,在内存耗尽之前就可以回收垃圾。
你也可以考虑到今天的智能手机比一些个人电脑拥有更多的资源。 < P>我不喜欢缓存,直到我知道它是必要的,因为再计算不容易出错。因此,首先,我将根据耗时的执行阶段进行性能调优。我认为进行性能调优要比通过缓存使程序复杂化容易得多,尤其是当我甚至不确定这会有多大帮助的时候 但是在进行性能调优之后,您可以看到重新计算仍然是主要的时间消耗,然后是的,进行缓存