Details
-
Type:
Sub-task
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 1.0-JSR-3
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
-
Number of attachments :
Description
John Wilson:
I have been looking at the code for ProxyMetaClass and I'm a little
concerned by "void use(Closure closure)". This changes the metaclass
returned by the registry for the duration of the execution of the
closure.
[..]
2/ this is not thread safe: the code changes the metaclass for all
the threads in the JVM.
[..]
Is 2/ the intended behaviour? If not we need to do something like
the thread local storage trick done by Sam's "use" implementation.
Dierk:
2/ Yes, I raised the issue myself when commenting the commit.
Using a TreadLocal is fine for me.
We should investigate on the need for additional
'synchronized' modifiers...