RFR: 8129776: The optimized Stream returned from Files.lines should unmap the mapped byte buffer (if created) when closed
Brian Burkhalter
bpb at openjdk.java.net
Tue Jan 26 00:43:51 UTC 2021
Please review this proposed change to unmap the mapped buffer shared between the root and sub-spliterators used in the optimized `Stream` implementation returned by `Files.lines()`. A reference counter is added to track the total number of spliterators sharing the buffer. It is set to 1 when the shared buffer is created, and incremented each time a sub-spliterator is created. It is decremented when traversing begins or when the spliterator is closed. If the counter is zero after it is decremented then the shared buffer is unmapped.
-------------
Commit messages:
- 8129776: The optimized Stream returned from Files.lines should unmap the mapped byte buffer (if created) when closed
Changes: https://git.openjdk.java.net/jdk/pull/2229/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2229&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8129776
Stats: 54 lines in 2 files changed: 38 ins; 8 del; 8 mod
Patch: https://git.openjdk.java.net/jdk/pull/2229.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/2229/head:pull/2229
PR: https://git.openjdk.java.net/jdk/pull/2229
More information about the nio-dev
mailing list