deadlock in initialization of instanceKlass

Krystal Mok rednaxelafx at
Thu Mar 22 18:39:17 PDT 2012

On Fri, Mar 23, 2012 at 9:19 AM, David Holmes <david.holmes at>wrote:

> On 23/03/2012 11:13 AM, Krystal Mok wrote:
>>  On the int[0] stuff: yep, I saw it. The locker object for bootstrap
>> class loader is also an array, a "fake" int[0][]:
>> _system_loader_lock_obj = oopFactory::new_system_**objArray(0, CHECK);
>> It's been like that since duke at 0...from what I can tell. Wonder why an
>> array was favored over something else, say, a java.lang.Byte instance,
>> which carries pretty much the same weight (in terms of object size)?
> A primitive array can be created without having any classes loaded.
> Ah, I see. That makes sense. So these klasses can be created even before
SystemDictionary is initialized, where as well-known classes (such as
java.lang.Byte) are created SystemDictionary initialization.

Kris Mok

> David
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the hotspot-dev mailing list