hg: jdk8/tl/jdk: 7194897: JSR 292: Cannot create more than 16 instances of an anonymous class; ...
Remi Forax
forax at univ-mlv.fr
Mon Nov 4 23:29:21 UTC 2013
On 11/04/2013 11:56 PM, John Rose wrote:
> On Nov 4, 2013, at 1:37 PM, Remi Forax <forax at univ-mlv.fr
> <mailto:forax at univ-mlv.fr>> wrote:
>
>> Note that while this fix is ok now,
>> it introduced a performance regression, doing reflection on a
>> functional method of an inner class
>> is faster than doing reflection on the functional method of a lambda
>> proxy.
>
> This particular fix didn't introduce a regression, it turned a throw
> (of NoClassDefFoundError) into correct but slow execution. Some
> keeping score might call that a speedup.
:)
>
> But you are right that there is a performance pothole in the
> interoperation between lambdas and reflection.
>
> This implementation RFE, to use method handles instead of code
> spinning, would take care of that particular problem:
> https://bugs.openjdk.java.net/browse/JDK-6824466
I remember writing a code like that a long time ago, to see if it was
possible,
as far as I remember, the main issue was to be able to say, please compiler
compile this method handle chain into a blob that I can reuse.
>
> — John
regards,
Rémi
More information about the core-libs-dev
mailing list