protected void clear ( int count , int margin ) { if ( margin < 64 ) { margin = 64 ; } int maxlookup = hashIndex . newNodePointer ; int accessBase = getAccessCountCeiling ( count , margin ) ; for ( int lookup = 0 ; lookup < maxlookup ; lookup ++ ) { Object o = objectKeyTable [ lookup ] ; if ( o != null && accessTable [ lookup ] < accessBase ) { removeObject ( o , false ) ; } } accessMin = accessBase ; }
Clear approximately count elements from the map starting with those with low accessTable ranking .