RFR: 8238761: Asynchronous handshakes [v3]
Robbin Ehn
rehn at openjdk.java.net
Mon Sep 21 10:10:44 UTC 2020
On Mon, 21 Sep 2020 05:27:00 GMT, David Holmes <dholmes at 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
More information about the serviceability-dev
mailing list