RFR: 8315884: New Object to ObjectMonitor mapping [v9]

Axel Boldt-Christmas aboldtch at openjdk.org
Tue Aug 13 14:06:55 UTC 2024


On Tue, 23 Jul 2024 14:27:34 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

>> src/hotspot/share/runtime/lightweightSynchronizer.cpp line 105:
>> 
>>> 103:   };
>>> 104: 
>>> 105:   class LookupMonitor : public StackObj {
>> 
>> I'm not understanding why we need this little wrapper class.
>
> It's a two way lookup.  The plain Lookup class is used to lookup the Monitor given the object.  This LookupMonitor class is used to lookup the object given the Monitor.  The CHT takes these wrapper classes.  Maybe we should rename LookupObject to be more clear?

As @coleenp said there are two lookups. One when you have the object and want to get or insert a new ObjectMonitor. Or the second when the deflator has an ObjectMonitor and wants to deflate and remove that object - ObjectMonitor association.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20067#discussion_r1715356203


More information about the serviceability-dev mailing list