Agreed, I believe there should be an hb relationship with this, if the
target is not alive.

On Mon, Apr 3, 2023, 04:50 Quan Anh Mai <qa...@openjdk.org> wrote:

> On Mon, 3 Apr 2023 09:36:39 GMT, David Holmes <dhol...@openjdk.org> wrote:
>
> >> We have the strange situation where calling `t.isAlive()` on a
> `java.lang.Thread` `t`, will call into the VM (via `alive()` then
> `isAlive0()`) where the VM then examines the `eetop` field of `t` to
> extract its `JavaThread` pointer and compare it to null. We can simply read
> `eetop` directly in `Thread.alive()`:
> >>
> >> boolean alive() {
> >>   return eetop != 0;
> >> }
> >>
> >> I also updated a comment in relation to `eetop`.
> >>
> >> Testing: tiers 1-3
> >>
> >> Thanks
> >
> > David Holmes has updated the pull request incrementally with one
> additional commit since the last revision:
> >
> >   Comment from AlanB
>
> May I ask if we need some form of memory order here? Maybe an aquiring
> load is necessary?
>
> -------------
>
> PR Comment: https://git.openjdk.org/jdk/pull/13287#issuecomment-1494094776
>

Reply via email to