What is retained size for an object on heapdump?

2020-02-09 06:10发布

问题:

I've recently increase my use of the Profiler in Netbeans (6.7), this is a great tool.

I have a question however. When taking a heap dump, on the summary page (expect window) it is possible to 'find the biggest objects by retained size'.

What is this value and how is it used to analyze memory usage?

回答1:

The retained size for an object is the quantity of memory this objects preserves from garbage collection.

The formal definition is "the size of the object plus the size of all objects referenced only by the first object, recursively".

For more explanations about what the retained memory is, see this article.

One easy way to remember it is that the retained memory is all the memory that could be garbage collected if this object was dereferenced.