On Mon, 21 Sep 2020 05:27:00 GMT, David Holmes <dhol...@openjdk.org> wrote:
>> src/hotspot/share/runtime/handshake.hpp line 45: >> >>> 43: // a single target/direct handshake or not, by the JavaThread that >>> requested the >>> 44: // handshake or the VMThread respectively. >>> 45: class HandshakeClosure : public ThreadClosure, public >>> CHeapObj<mtThread> { >> >> Just to be clear. You haven't added support for a handshake that >> must only be executed by the target thread yet, right? That's >> future work, if I remember correctly... > > AsyncHandshakeClosures have operations that must, by definition, be executed > by the target thread (if they are executed > at all). Yes as David says. The code that make sure this is case is: static bool processor_filter(HandshakeOperation* op) { return !op->is_asynch(); } Which is used e.g: return _queue.contains(processor_filter); While process_self_inner() uses no filter. ------------- PR: https://git.openjdk.java.net/jdk/pull/151