[foreign-memaccess] [Rev 04] RFR: Move "owner" field and thread-confinement checks to MemoryScope
Peter Levart
plevart at openjdk.java.net
Fri May 15 15:05:58 UTC 2020
> Now MemoryScope is simplified, I re-based this change and am opening this PR on top. Currently MemorySegment is
> encapsulating thread-confinement logic and state (owner field) while MemoryScope is encapsulating temporal-confinement
> logic and state. But the interplay between the two must be very carefully caried out (for example, close() or dup() on
> child scopes may only be called in owner thread). By moving the thread-confinement logic and state to MemoryScope, I
> think we get better encapsulation as all MemoryScope methods become "safe" - some can still be called in owner thread
> only, but failing to do so throws IllegalSateException instead of exhibiting undefined behavior.
Peter Levart has updated the pull request incrementally with one additional commit since the last revision:
Perform liveness check for unconfined MemoryScope too even if it may be racy without outside synchronization
-------------
Changes:
- all: https://git.openjdk.java.net/panama-foreign/pull/167/files
- new: https://git.openjdk.java.net/panama-foreign/pull/167/files/9fdd5a0e..66a821de
Webrevs:
- full: https://webrevs.openjdk.java.net/panama-foreign/167/webrev.04
- incr: https://webrevs.openjdk.java.net/panama-foreign/167/webrev.03-04
Stats: 11 lines in 1 file changed: 4 ins; 3 del; 4 mod
Patch: https://git.openjdk.java.net/panama-foreign/pull/167.diff
Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/167/head:pull/167
PR: https://git.openjdk.java.net/panama-foreign/pull/167
More information about the panama-dev
mailing list