On Aug 22, 2008, at 12:06, Jeremias Maerki wrote:
> I think I got it now. I'll clean up the code now, do multi-threading
> tests now and then prepare a patch for review.
>
> Just a question in the meantime: What's the purpose of the hash
> (Object)
> function in PropertyCache? It seems to just hash a hash code. At any
> rate, when I made sure that I always worked with the hashed hash code,
> the whole thing suddenly started working.
This is borrowed from Sun's java.util.HashMap. It defends the map
against 'bad' hashCode() implementations (that is: it guarantees
proper distribution over the buckets, regardless of the quality of
the hashCode() implementation)
>
> BTW, I've upped the minimal bucket count to be equals to the segment
> count so a lock on a segment is always the equivalent of a lock of the
> set of buckets assigned to the segment. That allows more efficient
> cleaning code.
Makes sense.
Cheers
Andreas
|