Hi Claes,

On 30/04/2018 10:49 PM, Claes Redestad wrote:
Hi,

please review this patch to enable caching of getCanonicalName and getSimpleName, repeated calls of which has been reported to be a performance
bottleneck. The caching improves performance of these methods by up to 20x.

Rather than adding new fields to Class itself, which would have footprint implications on classes, we can piggy-back on Class$ReflectionData object.

Webrev: http://cr.openjdk.java.net/~redestad/8187123/open.02/
Bug: https://bugs.openjdk.java.net/browse/JDK-8187123

Given String's are immune to unsafe publication races, you should be able to drop the volatile modifiers. That might save a few more cycles.

Cheers,
David

Thanks!

/Claes


Reply via email to