2013-03-18 127 views
0

我想写几个缓存算法,但目前我坚持基于缓存中的对象大小的算法。如何编写基于对象大小的缓存算法?

根据之前的questions,我得出的结论是没有好的方法来获得对象的大小。那么基于对象大小的算法应该如何工作呢?

+0

序列化是一个选项吗?如果是,那么它可能是;序列化 - >获取字节数 - >您的缓存算法 – Yahya 2013-03-18 11:00:49

回答

0

你不能用一个对象的大小来做到这一点,至少不是非常基本的精度。

的选项有:

  • 使用对象的大小估计(如基于序列化对象的大小) - 这可能是有点慢,效率低,只能大致准确

  • 使用某种的计数器作为对象大小的指标,例如当您变更对象时,可以递增或递减计数器以反映变化的大小

  • 使用其他条件进行缓存,例如当对象t被插入缓存或访问请求的频率对对象进行访问请求