RFR: 8292698: Improve performance of DataInputStream

Alan Bateman alanb at openjdk.org
Wed Aug 24 06:19:30 UTC 2022


On Tue, 23 Aug 2022 18:57:07 GMT, Сергей Цыпанов <duke at openjdk.org> wrote:

> Suppose we have a scenario where `in` is replaced asynchronously in one of implementations and the implementation is passed into constructor of `DataInputStream`. In this case the patched code is less NPE-vulnerable, isn't it?

I can't imagine a subclass of DataInputStream setting 'in' to null. If it handles async close then it's possible that it replaces it with an input stream where read throws IOException unconditionally. This is why the original patch was problematic for the methods that call in.read in a loop. The updated patch is probably okay, I'm just pointing out that we are forced to think of subclasses when touching this code.

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

PR: https://git.openjdk.org/jdk/pull/9956


More information about the core-libs-dev mailing list