如何计算对象的内存使用量?

时间:2011-04-27 18:53:44

标签: java caching memory-management

我正在为Android应用程序实现一个缓存系统,我需要添加一个参数来指定缓存所允许的最大内存量,但我不知道如何计算用于对象的内存。

3 个答案:

答案 0 :(得分:1)

显然1.5添加了一个仪器界面。看看这篇文章

http://www.javapractices.com/topic/TopicAction.do?Id=83

您可以使用getObjectSize()方法。它的具体实现和近似但不比没有好

答案 1 :(得分:0)

您可以考虑获取应用程序的堆转储并观察其保留堆

答案 2 :(得分:-1)

这取决于对象。计算对象的每个部分在分配时获取的内存大小,以获得对象可以达到的最大大小的基线。