V readValueUnderLock(HashEntry<K,V> e) {
            lock();
            try {
                removeStale();
                return e.value;
            } finally {
                unlock();
            }
        }
Reads value field of an entry under lock. Called if value
field ever appears to be null. This is possible only if a
compiler happens to reorder a HashEntry initialization with
its table assignment, which is legal under memory model
but is not known to ever occur.
commons-profiler/src/main/java/com/navercorp/pinpoint/common/profiler/concurrent/jsr166/ConcurrentWeakHashMap.java