src/share/classes/java/lang/invoke/MethodTypeForm.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/classes/java/lang/invoke/MethodTypeForm.java Wed May 28 11:09:44 2014
--- new/src/share/classes/java/lang/invoke/MethodTypeForm.java Wed May 28 11:09:44 2014
*** 89,100 ****
--- 89,102 ----
public LambdaForm cachedLambdaForm(int which) {
return lambdaForms[which];
}
! synchronized public LambdaForm setCachedLambdaForm(int which, LambdaForm form) {
! // Should we perform some sort of CAS, to avoid racy duplication?
! // Simulate a CAS, to avoid racy duplication of results.
+ LambdaForm prev = lambdaForms[which];
+ if (prev != null) return prev;
return lambdaForms[which] = form;
}
public MethodHandle basicInvoker() {
assert(erasedType == basicType) : "erasedType: " + erasedType + " != basicType: " + basicType; // primitives must be flattened also
src/share/classes/java/lang/invoke/MethodTypeForm.java
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File