hg: jdk8/tl/jdk: 7194897: JSR 292: Cannot create more than 16 instances of an anonymous class; ...

John Rose john.r.rose at oracle.com
Mon Nov 4 22:56:30 UTC 2013


On Nov 4, 2013, at 1:37 PM, Remi Forax <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

— John


More information about the core-libs-dev mailing list