There seems to be different naming conventions for handshake closures. A simple grep shows that most handshakes have Closure at the end of the name, some have HandshakeClosure, some have Handshake, and some just have handshake at the beginning.
ShenandoahUpdateThreadClosure
ShenandoahRendezvousClosure
ZRendezvousClosure
ZMarkFlushAndFreeStacksClosure
GetSingleStackTraceClosure
ReadMonitorsClosure
TraceSelfClosure
CloseScopedMemoryClosure
EnterInterpOnlyModeClosure
GetCurrentLocationClosure
DeoptimizeMarkedClosure
NMethodMarkingClosure
HandshakeALotClosure
TraceSelfClosure
ShenandoahFlushSATBHandshakeClosure
JvmtiHandshakeClosure
EscapeBarrierSuspendHandshake
InstallAsyncExceptionHandshake
ThreadSelfSuspensionHandshake
SuspendThreadHandshake
AsyncExceptionHandshake
UnsafeAccessErrorHandshake
HandshakeForPD
HandshakeForDeflation
ShenandoahUpdateThreadClosure
ShenandoahRendezvousClosure
ZRendezvousClosure
ZMarkFlushAndFreeStacksClosure
GetSingleStackTraceClosure
ReadMonitorsClosure
TraceSelfClosure
CloseScopedMemoryClosure
EnterInterpOnlyModeClosure
GetCurrentLocationClosure
DeoptimizeMarkedClosure
NMethodMarkingClosure
HandshakeALotClosure
TraceSelfClosure
ShenandoahFlushSATBHandshakeClosure
JvmtiHandshakeClosure
EscapeBarrierSuspendHandshake
InstallAsyncExceptionHandshake
ThreadSelfSuspensionHandshake
SuspendThreadHandshake
AsyncExceptionHandshake
UnsafeAccessErrorHandshake
HandshakeForPD
HandshakeForDeflation