134 // tracker data structures |
134 // tracker data structures |
135 extern Mutex* HotCardCache_lock; // protects the hot card cache |
135 extern Mutex* HotCardCache_lock; // protects the hot card cache |
136 |
136 |
137 extern Mutex* Management_lock; // a lock used to serialize JVM management |
137 extern Mutex* Management_lock; // a lock used to serialize JVM management |
138 extern Monitor* Service_lock; // a lock used for service thread operation |
138 extern Monitor* Service_lock; // a lock used for service thread operation |
|
139 extern Mutex* Stacktrace_lock; // used to guard access to the stacktrace table |
|
140 |
|
141 extern Monitor* JfrQuery_lock; // protects JFR use |
|
142 extern Monitor* JfrMsg_lock; // protects JFR messaging |
|
143 extern Mutex* JfrBuffer_lock; // protects JFR buffer operations |
|
144 extern Mutex* JfrStream_lock; // protects JFR stream access |
139 |
145 |
140 // A MutexLocker provides mutual exclusion with respect to a given mutex |
146 // A MutexLocker provides mutual exclusion with respect to a given mutex |
141 // for the scope which contains the locker. The lock is an OS lock, not |
147 // for the scope which contains the locker. The lock is an OS lock, not |
142 // an object lock, and the two do not interoperate. Do not use Mutex-based |
148 // an object lock, and the two do not interoperate. Do not use Mutex-based |
143 // locks to lock on Java objects, because they will not be respected if a |
149 // locks to lock on Java objects, because they will not be respected if a |