-
Enhancement
-
Resolution: Fixed
-
P4
-
17
-
b19
Currently var handle invoker caching has some TODO comments:
/*non-public*/
MethodHandle varHandleMethodInvoker(VarHandle.AccessMode ak) {
// TODO cache invoker
return makeVarHandleMethodInvoker(ak, false);
}
/*non-public*/
MethodHandle varHandleMethodExactInvoker(VarHandle.AccessMode ak) {
// TODO cache invoker
return makeVarHandleMethodInvoker(ak, true);
}
It is relatively easy/simple to implement caching here, by replicating what is done for MethodHandle invokers (multiplied by the number of access modes)
/*non-public*/
MethodHandle varHandleMethodInvoker(VarHandle.AccessMode ak) {
// TODO cache invoker
return makeVarHandleMethodInvoker(ak, false);
}
/*non-public*/
MethodHandle varHandleMethodExactInvoker(VarHandle.AccessMode ak) {
// TODO cache invoker
return makeVarHandleMethodInvoker(ak, true);
}
It is relatively easy/simple to implement caching here, by replicating what is done for MethodHandle invokers (multiplied by the number of access modes)