On Thu, Dec 27, 2012 at 1:55 PM, Mike Duigou <mike.dui...@oracle.com> wrote:
> 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.

That is pretty common, for example, in a web server, each request may
use a HashMap for headers, and there are thousands of requests per
second. That's probably not a big deal either on commodity hardware,
but OP got 64 cores.

Zhong Yu

> Mike
>
> 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?
>>
>> -Aleksey.
>>
>> On 27.12.2012, at 23:16, Zhong Yu <zhong.j...@gmail.com> wrote:
>>
>>> Reported by the SO question
>>>
>>>   http://stackoverflow.com/questions/14010906
>>>
>>> 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
>

Reply via email to