148 |
148 |
149 // GC: we current use aggressive monitor deflation policy |
149 // GC: we current use aggressive monitor deflation policy |
150 // Basically we deflate all monitors that are not busy. |
150 // Basically we deflate all monitors that are not busy. |
151 // An adaptive profile-based deflation policy could be used if needed |
151 // An adaptive profile-based deflation policy could be used if needed |
152 static void deflate_idle_monitors(); |
152 static void deflate_idle_monitors(); |
|
153 static bool deflate_monitor(ObjectMonitor* mid, oop obj, ObjectMonitor** FreeHeadp, |
|
154 ObjectMonitor** FreeTailp); |
153 static void oops_do(OopClosure* f); |
155 static void oops_do(OopClosure* f); |
154 |
156 |
155 // debugging |
157 // debugging |
156 static void trace_locking(Handle obj, bool is_compiled, bool is_method, bool is_locking) PRODUCT_RETURN; |
158 static void trace_locking(Handle obj, bool is_compiled, bool is_method, bool is_locking) PRODUCT_RETURN; |
157 static void verify() PRODUCT_RETURN; |
159 static void verify() PRODUCT_RETURN; |