2016-04-24 77 views

回答

1

当你有一组

1)您只需要一次

2)的总内存使用整套的是使用它们的一个子集的对象,您使用LRU高速缓存太大

3)您可以根据命令重新加载特定对象的数据,但是为每个项目执行此操作都很耗时。

4)有内存使用的地方 - 最近使用的项目很可能会很快再次使用。

最大的例子是图像列表。图像很大,需要很多内存。如果您需要其中的100个,则无法将所有这些位图保存在Bitmaps中 - 您将遇到OutOfMemoryException。相反,你会使用一个LRU缓存来保存最近的10个左右的工作。如果您需要再次使用其中一个,它已经在缓存中并且可以快速访问。如果你需要一个新的,你可以从磁盘(或从网络)加载它。这种方式你永远不会使用超过10-11位图,并且你永远不会遇到OutOfMemoryException。

+0

谢谢,现在我对此有了更清楚的认识。 – PalT