RFR: 8253179: Replace LinkedList Impl in net.http.Http2Connection [v2]

Chris Hegarty chegar at openjdk.java.net
Tue Oct 6 15:41:11 UTC 2020


On Fri, 2 Oct 2020 08:41:56 GMT, Conor Cleary <ccleary at openjdk.org> wrote:

>> This patch replaces a LinkedList data structure used in the net.http.Http2Connection class with an ArrayList. This
>> issue relates to [JDK-8246048: Replace LinkedList with ArrayLists in
>> java.net](https://bugs.openjdk.java.net/browse/JDK-8246048).  Some justifications for this change are as follows:
>> 
>> - Sequential Access Times for ArrayLists are improved due to locality of reference (i.e ArrayList elements stored in same
>>   memory neighborhood)
>> - Get(index) operations are O(1) time complexity for ArrayLists as opposed to worst-case O(N-1) for LinkedLists
>> - While insertion operations can be expensive (O(N) in the worst case), these operations appear to be
>>   infrequent/non-existent in this case.
>> 
>> Additional justifications or challenges to those listed are welcome! The general idea is that ArrayLists out-perform
>> LinkedLists in this scenario.
>
> Conor Cleary has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8253179: Removed ArrayList copy of streams

Marked as reviewed by chegar (Reviewer).

-------------

PR: https://git.openjdk.java.net/jdk/pull/431


More information about the net-dev mailing list