FMA-17 MemorySegment needs a isNative()
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Tue May 11 09:44:57 UTC 2021
Hi,
the method has been added in the latest API iteration and is slated for
integration here:
https://git.openjdk.java.net/jdk/pull/3699
Thanks
Maurizio
On 11/05/2021 10:22, Chris Vest wrote:
> For what it's worth we have a similar try-catch in the Netty integration.
> We have a method on our Buffer interface for querying a buffers native
> address, which returns 0 as a special value for heap buffers.
> We use this information to decide how to do certain IO calls.
>
> On Tue, 20 Apr 2021 at 11:58, Maurizio Cimadamore
> <maurizio.cimadamore at oracle.com
> <mailto:maurizio.cimadamore at oracle.com>> wrote:
>
> We'll consider this.
>
> In the meantime, you can emulate the check with this:
>
> try {
> segment.address().toRawLongValue()
> return true;
> } catch (UnsupportedOperationException ex) {
> return false;
> }
>
> Not great, but works :-)
>
> Maurizio
>
>
> On 20/04/2021 00:29, leerho wrote:
> > It would be very useful to be able to determine from just a given
> > MemorySegment if it is off-heap or on-heap. If a custom
> allocator gets a
> > request from a child process for a new segment, the allocator
> needs to know
> > whether that segment should be allocated on-heap or off-heap.
> >
> > A simple *boolean isNative() would do the trick.*
> >
> > Lee.
>
More information about the panama-dev
mailing list