RFR [8011215] optimization of CopyOnWriteArrayList.addIfAbsent()

Martin Buchholz martinrb at google.com
Tue Apr 2 20:55:21 UTC 2013


Thanks for this change.  There is a tradeoff here.  If the element is never
present, then the older code might be a little faster, because we can avoid
re-traversing the array.  Otherwise, the new code is better.

I prefer it your way (I hate unneeded allocation), but the code was
intentionally written the other way.  Let's hear from Doug...

Martin


On Tue, Apr 2, 2013 at 1:38 PM, Ivan Gerasimov <ivan.gerasimov at oracle.com>wrote:

>
>   Please review my proposal for the CopyOnWriteArrayList.addIfAbsent()
>> method optimization.
>>
>> http://washi.ru.oracle.com/~igerasim/webrevs/8011215/webrev/index.html
>
>
>  This URL is not readable by external reviewers.
>
>
> The webrev has been copied here:
> http://cr.openjdk.java.net/~coffeys/webrev.8011215.ivan/
>
>
>   The "master" version of CopyOnWriteArrayList is here:
>
> http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concurrent/CopyOnWriteArrayList.java?view=markup
>
>    Thanks for the link!
> I see that the code in the master version is identical to the one I've
> been working on.
> So the optimization still could be applied.
>
> Sincerely,
> Ivan
>



More information about the core-libs-dev mailing list