RFR: 8066644: Fix deprecation warnings in jdk.zipfs module
Claes Redestad
claes.redestad at oracle.com
Tue Oct 27 15:37:29 UTC 2015
On 2015-10-27 15:09, Claes Redestad wrote:
>
>
> On 2015-10-27 14:40, Aleksey Shipilev wrote:
>> On 10/24/2015 11:54 PM, Claes Redestad wrote:
>>> webrev: <redacted>
>>> bug: https://bugs.openjdk.java.net/browse/JDK-8066644
>> Looks good.
>>
>> Is there really no way to use the new DateTime API, and ditch the
>> multiplication by 1000L here?
>>
>> 116 return ldt.toEpochSecond(
>> 117 ZoneId.systemDefault().getRules().getOffset(ldt)) * 1000L;
>
> I guess using java.util.concurrent.TimeUnit might suffice:
>
> return TimeUnit.MILLISECONDS.convert(ldt.toEpochSecond(...),
> TimeUnit.SECONDS);
>
> The idiomatic DateTime way I guess would be to do:
>
> return Duration.ofSeconds(ldt.toEpochSecond(), 0).toMillis();
>
> I'll take these for a spin; properly inlined either variant might be
> performance neutral.
It seems any difference between the second-to-millisecond conversion
approaches is negligible under repeated testing[1], thus I think the
preferred approach is to use be Duration.ofSeconds(..).toMillis():
http://cr.openjdk.java.net/~redestad/8066644/webrev.03
Thanks!
/Claes
Benchmark Mode Cnt Score Error Units
ZipUtilsTest.dosToJavaTime_Original avgt 25 108.056 ± 1.622 ns/op
ZipUtilsTest.dosToJavaTime_Duration avgt 25 105.468 ± 2.076 ns/op
ZipUtilsTest.dosToJavaTime_TimeUnit avgt 25 104.318 ± 2.456 ns/op
More information about the core-libs-dev
mailing list