unreflectGetter and static class initialization
Julien Ponge
julien.ponge at gmail.com
Mon Oct 29 09:45:34 PDT 2012
I once heard that there might me plans to push Unsafe to the public APIs... Does anybody have informations about this?
- Julien
Le 29 oct. 2012 à 17:29, Remi Forax <forax at univ-mlv.fr> a écrit :
> On 10/29/2012 05:03 PM, Christian Thalinger wrote:
>>
>> On Oct 24, 2012, at 3:32 PM, John Rose <john.r.rose at oracle.com
>> <mailto:john.r.rose at oracle.com>> wrote:
>>
>>> On Oct 24, 2012, at 1:08 PM, Jochen Theodorou wrote:
>>>
>>>> what do you suggest as workaround?
>>>
>>> You could force the class to be initialized when the MH is created.
>>> This can be done with Class.forName. It would not exactly give you
>>> the semantics you want, since the init would happen early.
>>>
>>> Or, you could wrap the buggy MH in a MH which first forces
>>> initialization. With a switchpoint you can make it a once-only event
>>> (per thread, at least).
>>
>> ...or move to JDK 8 until 7u with an updated 292 is released. Doesn't
>> the NoClassDefFoundError bite you anyway?
>>
>> -- Chris
>
> I'm sure that Jochen will be happy to move to jdk8 but I'm also sure
> that all Groovy users will not be happy to do the same :)
>
> In my opinion, the best is to use Unsafe.ensureClassInitialized() the
> first time you call the BSM, it should be enough.
>
> Rémi
>
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
More information about the mlvm-dev
mailing list