Thread Local Handshake in JVMTI functions
David Holmes
david.holmes at oracle.com
Tue Mar 31 10:16:23 UTC 2020
Hi Yasumasa,
On 31/03/2020 8:06 pm, Yasumasa Suenaga wrote:
> Hi all,
>
> Many JVMTI functions uses VM Operation to get information. However some
> of them need to stop only one thread - they don't need to stop all threads.
> So I think we can use Thread Local Handshake as this webrev. It is
> example for GetOneCurrentContendedMonitor().
True, but at the moment handshakes involve the VMThread. There is work
being done to support direct thread-to-thread handshakes and once that
is done this kind of conversion should be more easily done. It might be
worth waiting for that.
> http://cr.openjdk.java.net/~ysuenaga/jvmti-thread-local-handshake/
An observation, it seems to me that calling_thread is not used when this
is not a VMOperation.
Cheers,
David
> Also I think we can replace following VM Operations to Thread Local
> Handshake:
>
> class VM_GetCurrentLocation
> class VM_EnterInterpOnlyMode
> class VM_UpdateForPopTopFrame
> class VM_SetFramePop
> class VM_GetOwnedMonitorInfo
> class VM_GetCurrentContendedMonitor
> class VM_GetFrameCount
> class VM_GetFrameLocation
>
> What do you think?
> It it is acceptable, I will file it to JBS and send review request.
>
>
> Thanks,
>
> Yasumasa
More information about the serviceability-dev
mailing list