> From: Aaron M. Renn
>
>
> Petter Reinholdtsen wrote:
> > I've tested the reflection patch, and it seem to work OK. I'm trying
> > to decide for myself it the native state handling will require central
> > coordination to avoid storing two different states using the same
> > pointer. Will this be necessery?
>
> Question. I did a scan of the entire Japhar source tree and the
> only module
> that really uses the NSA_Get/SetNativeState fuctions is thread.c. Is that
> the only area where the native state pointers are used?
There are two places that use NSA: thread.c and I think the other one is
lib/libruntime/objects.c. The functions clazzfile_to_jclass() and
jclass_to_clazzfile() use it.
The reflection patch Petter is referring to above makes Reflection use NSA,
also.
> Where does the
> potential for conflict lie? Why does the Classpath thread module use a
> different native state mechanism?
>
The Classpath thread module uses a native state mechanism? There shouldn't
*be* a Classpath Thread module.
The classes Japhar uses native state pointers on are Class, Thread, and with
the reflection patch, reflect.Method/Field/Constructor.
--John