private static void processQueue(ReferenceQueue<Key> queue,ConcurrentHashMap<? extends WeakReference<Key>,?> pdMap){
  Reference<? extends Key> ref;
  while ((ref=queue.poll()) != null) {
    pdMap.remove(ref);
  }
}

private static void processQueue ( ReferenceQueue < Key > queue , ConcurrentHashMap < ? extends WeakReference < Key > , ? > pdMap ) { Reference < ? extends Key > ref ; while ( ( ref = queue . poll ( ) ) != null ) { pdMap . remove ( ref ) ; } }
removes weak keys from the map that have been enqueued on the reference queue and are no longer in use .
