Class ConcurrentThreadLocal<T>


  • public class ConcurrentThreadLocal<T>
    extends java.lang.Object
    A "thread local" variable that uses weak refs to track the thread to value mapping. This class is useful when ThreadLocal instances are inconvenient.

    Like All classes in this package, this class is not API stable.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.ref.ReferenceQueue<java.lang.Thread> queue  
      private java.util.concurrent.ConcurrentMap<ThreadRef,​T> refs  
    • Field Detail

      • refs

        private final java.util.concurrent.ConcurrentMap<ThreadRef,​T> refs
      • queue

        private final java.lang.ref.ReferenceQueue<java.lang.Thread> queue
    • Constructor Detail

      • ConcurrentThreadLocal

        public ConcurrentThreadLocal()
    • Method Detail

      • get

        public T get()
      • remove

        public void remove()
      • set

        public void set​(T value)
      • initialValue

        protected T initialValue()
      • initialValueInternal

        private T initialValueInternal()
      • drainQueue

        private void drainQueue()
      • drainQueue

        private void drainQueue​(java.lang.ref.Reference<? extends java.lang.Thread> ref)