RFR: 8317819: Scope should reflect lifetime of underying resource (mainline) [v3]

Maurizio Cimadamore mcimadamore at openjdk.org
Fri Oct 13 17:16:11 UTC 2023


On Fri, 13 Oct 2023 17:10:48 GMT, Maurizio Cimadamore <mcimadamore at openjdk.org> wrote:

>> This PR is based on a port of: openjdk/panama-foreign#898
>> 
>> Some additional changes are contained in this PR:
>> 
>> * instead of using a different "always alive" scope for zero-length memory segments, we now use the global scope
>> * the javadoc for `MemorySegment::ofArray`, `MemorySegment::ofBuffer` and `SymbolLookup::loaderLookup` is tweaked to say that the scope associated to the returned segments is an automatic scope
>> * the javadoc for `MemorySegment.Scope` defines the concepts of global and automatic scope, which are then referenced in the `Arena` javadoc.
>
> Maurizio Cimadamore has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Address review comments

src/java.base/share/classes/java/lang/foreign/MemoryLayout.java line 484:

> 482:      * VarHandle baseHandle = this.varHandle(P);
> 483:      * MemoryLayout target = ((AddressLayout)this.select(P)).targetLayout().get();
> 484:      * VarHandle targetHandle = target.varHandle(P);

I've seen this typo in the example, and decided to fix it (even if unrelated)

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16183#discussion_r1358528040


More information about the core-libs-dev mailing list