Someone registers thousands of Object's and MethodRef's (was/is: gc times doubling)

Martin Egholm Nielsen martin@egholm-nielsen.dk
Thu Mar 30 19:25:00 GMT 2006


>> 15179 of 21504 entries are non-null (points inside feasable heap-region)
>> 6326 elements are of class "gnu.gcj.runtime.MethodRef"
>> 8854 elements are of class "java.lang.Object"
>> Now, that's many MethodRef's!

> The MethodRefs are used in the generation of stack traces.  libgcj keeps 
> a cache of them so that printing of stack traces is faster.
> 
> I think that each time each time an exception is thrown the cache can 
> grow.  Thus your array keeps getting bigger.

But 6000? That's really a huge number of methods, right!
This array of 21504 is being registered after almost no time after 
application-start - we talk seconds - before anything has really happened...

// Martin



More information about the Java mailing list