Scaling problem of HashMap (introduced with alternative hashing)
mike.duigou at oracle.com
Thu Dec 27 19:55:06 UTC 2012
I am responding on the StackOverflow thread. I will look into using ThreadLocalRandom.
The random.next() is clearly a potential bottleneck but given that this happens only once per HashMap instance it is still unclear why a reasonable application would want to create hundreds or thousands of hash maps per second.
On Dec 27 2012, at 11:38 , Aleksey Shipilev wrote:
> Looks very like dumb inlined java.util.Random?
> Is there a security threat to use ThreadLocalRandom instead there?
> On 27.12.2012, at 23:16, Zhong Yu <zhong.j.yu at gmail.com> wrote:
>> Reported by the SO question
>> the HashMap constructor contains a CAS, which is kind of surprising.
>> Could it be removed?
>> transient final int hashSeed =
>> sun.misc.Hashing.randomHashSeed(this); // CAS
>> Zhong Yu
More information about the core-libs-dev