RFR: 8292698: Improve performance of DataInputStream
Daniel Fuchs
dfuchs at openjdk.org
Tue Aug 23 15:55:33 UTC 2022
On Tue, 23 Aug 2022 14:31:26 GMT, Сергей Цыпанов <duke at openjdk.org> wrote:
> > I agree that caution is warranted
>
> But assuming I've reverted the changes that are dubious, how could there be bugs caused by replacement of multiple reads with a single one? I was sure that such replacement improves thread safety as soon as we rid racy reads.
Yes - that's what I was trying to say. I believe reading the volatile only once per method is much better for consistency. And I'm not sure I see why the other changes were dubious since these methods weren't checking for `null` either?
My point is that if some method in the subclass can set the value to `null` asynchronously when some other method in the super class is running then that's a NPE time-bomb (and IMO there's a bug lurking if that can happen).
-------------
PR: https://git.openjdk.org/jdk/pull/9956
More information about the core-libs-dev
mailing list