Integrated: 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
Mon Feb 8 22:22:58 UTC 2021


On Mon, 25 Jan 2021 23:55:02 GMT, Brian Burkhalter <bpb at openjdk.org> wrote:

> 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.

This pull request has now been integrated.

Changeset: 74519628
Author:    Brian Burkhalter <bpb at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/74519628
Stats:     58 lines in 3 files changed: 40 ins; 8 del; 10 mod

8129776: The optimized Stream returned from Files.lines should unmap the mapped byte buffer (if created) when closed

Reviewed-by: rriggs, psandoz, alanb

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

PR: https://git.openjdk.java.net/jdk/pull/2229


More information about the nio-dev mailing list