Class Interners


  • public final class Interners
    extends java.lang.Object
    Contains static methods pertaining to instances of Interner.
    Since:
    3.0
    • Constructor Detail

      • Interners

        private Interners()
    • Method Detail

      • newStrongInterner

        public static <E> Interner<E> newStrongInterner()
        Returns a new thread-safe interner which retains a strong reference to each instance it has interned, thus preventing these instances from being garbage-collected. If this retention is acceptable, this implementation may perform better than newWeakInterner().
      • newWeakInterner

        public static <E> Interner<E> newWeakInterner()
        Returns a new thread-safe interner which retains a weak reference to each instance it has interned, and so does not prevent these instances from being garbage-collected. This most likely does not perform as well as newStrongInterner(), but is the best alternative when the memory usage of that implementation is unacceptable.
      • asFunction

        public static <E> Function<E,​E> asFunction​(Interner<E> interner)
        Returns a function that delegates to the Interner.intern(E) method of the given interner.
        Since:
        8.0