private long [ ] indexes ( ByteBuffer key ) { // we use the same array both for storing the hash result, and for storing the indexes we return, // so that we do not need to allocate two arrays. long [ ] indexes = reusableIndexes . get ( ) ; hash ( key , key . position ( ) , key . remaining ( ) , 0L , indexes ) ; setIndexes ( indexes [ 0 ] , indexes [ 1 ] , hashCount , bitset . capacity ( ) , indexes ) ; return indexes ; }
a second threadlocal lookup .