Class ThreadLocalUtil


  • public class ThreadLocalUtil
    extends Object
    Small utility to allow to remove references held in ThreadLocals. This is sometimes necessary, e.g. when returning threads into a global thread pool. For each usage of ThreadLocal, a cleaner is registered via registerCleaner().
    • Method Detail

      • clearAllThreadLocals

        public static void clearAllThreadLocals()
        Clear ThreadLocals of the current thread. This can be used to clean out a thread before "returning" it to a thread-pool or a Web-Container like Tomcat. Usually org.apache.xmlbeans.ThreadLocalUtil#clearAllThreadLocals() should be called as well to clear out some more ThreadLocals which are created by the XMLBeans library internally.
      • registerCleaner

        @Internal
        public static void registerCleaner​(Runnable cleaner)
        Intended for internal use only so other modules of Apache POi can add cleaners.
        Parameters:
        cleaner - a runnable which clears some thread-local that is located outside of the "poi" module.