RFR: 8258804: Collection.toArray() should use empty array
Xue-Lei Andrew Fan
xuelei at openjdk.java.net
Tue Dec 22 18:15:57 UTC 2020
On Tue, 22 Dec 2020 12:39:23 GMT, David M. Lloyd <github.com+124581+dmlloyd at openjdk.org> wrote:
>> Comparing to Collection.toArray(new T[size)), the Collection.toArray(new T[0]) seems faster, safer and contractually cleaner. In the update, the use of Collection.toArray(new T[size)) in the SunJSSE provider implementation is replaced with Collection.toArray(new T[0]).
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8258804
>
> src/java.base/share/classes/sun/security/ssl/SSLContextImpl.java line 854:
>
>> 852: // Use the customized TLS protocols.
>> 853: candidates =
>> 854: refactored.toArray(new ProtocolVersion[0]);
>
> If this level of performance improvement is justified, then would it not be better to use a constant empty array instead of constructing a new one each time?
I think empty array construction could be optimized in the compiler layer.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1861
More information about the security-dev
mailing list