Why not use getCachedInstance() ? Gary
On Wed, May 1, 2019 at 5:20 PM Tomo Suzuki <suzt...@google.com.invalid> wrote: > Hi BCEL developers, > > We use BCEL library to inspect Java class. Thank you for the great library. > > When our tool checks classes in ~200 jar files, it creates more than 2 > million BCEL ConstantUtf8 instances. I suspect many of them share the same > values such as "java.lang.String". > > [image: many_constant_utf8.png] > > Given this observation, I got an idea to to reuse ConstantUtf8 with same > value to save memory footprint. Because ConstantUtf8 is constant, sharing > the instances across classes should not cause a problem. Note that BCEL is > not designed thread-safe (doc > <https://commons.apache.org/proper/commons-bcel/faq.html>). > > If this is a good idea, I'm thinking to make a pull request around BCEL's > ConstantUtf8.getInstance method: > > https://github.com/apache/commons-bcel/blob/master/src/main/java/org/apache/bcel/classfile/ConstantUtf8.java#L116 > > Does anybody have any thought? > > -- > Regards, > Tomo >