RFR: 8283044: Use asynchronous handshakes to deliver asynchronous exceptions [v3]

Robbin Ehn rehn at openjdk.java.net
Tue Mar 29 08:39:55 UTC 2022


On Tue, 29 Mar 2022 00:52:12 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> I looked at the suspend handshakes (ThreadSelfSuspensionHandshake, SuspendThreadHandshake) and followed that naming convention. But now doing a grep I see that most handshakes have Closure instead at the end, some have HandshakeClosure, and some just have handshake at the beginning(HandshakeForDeflation, HandshakeForPD) . Not sure now which one we should use. It seems it should be either Closure or HandshakeClosure at the end.
>> Regarding InstallAsyncExceptionHandshake, we need it to execute the first handshake that installs the actual asynchronous handshake. The closure of that asynchronous handshake is stored in InstallAsyncExceptionHandshake::_aeh.
>
> Hmmm ... I'm having trouble following the control flow here so will re-examine.
> 
> The naming issue is a concern ... perhaps @robehn can comment?

The name comes from that it extends ThreadClosure.
The reason for that is that GC have thread closures to be executed as handshakes or for each thread in a safepoint.

Whatever the name is good or bad I have no opinion.

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

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


More information about the hotspot-runtime-dev mailing list