117 extern Monitor* ThreadsSMRDelete_lock; // Used by ThreadsSMRSupport to take pressure off the Threads_lock
118 extern Mutex* ThreadIdTableCreate_lock; // Used by ThreadIdTable to lazily create the thread id table
119 extern Mutex* SharedDecoder_lock; // serializes access to the decoder during normal (not error reporting) use
120 extern Mutex* DCmdFactory_lock; // serialize access to DCmdFactory information
121 #if INCLUDE_NMT
122 extern Mutex* NMTQuery_lock; // serialize NMT Dcmd queries
123 #endif
124 #if INCLUDE_CDS
125 #if INCLUDE_JVMTI
126 extern Mutex* CDSClassFileStream_lock; // FileMapInfo::open_stream_for_jvmti
127 #endif
128 extern Mutex* DumpTimeTable_lock; // SystemDictionaryShared::find_or_allocate_info_for
129 #endif // INCLUDE_CDS
130 #if INCLUDE_JFR
131 extern Mutex* JfrStacktrace_lock; // used to guard access to the JFR stacktrace table
132 extern Monitor* JfrMsg_lock; // protects JFR messaging
133 extern Mutex* JfrBuffer_lock; // protects JFR buffer operations
134 extern Mutex* JfrStream_lock; // protects JFR stream access
135 extern Monitor* JfrThreadSampler_lock; // used to suspend/resume JFR thread sampler
136 #endif
137
138 #ifndef SUPPORTS_NATIVE_CX8
139 extern Mutex* UnsafeJlong_lock; // provides Unsafe atomic updates to jlongs on platforms that don't support cx8
140 #endif
141
142 extern Mutex* MetaspaceExpand_lock; // protects Metaspace virtualspace and chunk expansions
143 extern Mutex* ClassLoaderDataGraph_lock; // protects CLDG list, needed for concurrent unloading
144
145
146 extern Mutex* CodeHeapStateAnalytics_lock; // lock print functions against concurrent analyze functions.
147 // Only used locally in PrintCodeCacheLayout processing.
148
149 #if INCLUDE_JVMCI
150 extern Monitor* JVMCI_lock; // Monitor to control initialization of JVMCI
151 #endif
152
153 extern Mutex* tty_lock; // lock to synchronize output.
154
155 // A MutexLocker provides mutual exclusion with respect to a given mutex
156 // for the scope which contains the locker. The lock is an OS lock, not
|
117 extern Monitor* ThreadsSMRDelete_lock; // Used by ThreadsSMRSupport to take pressure off the Threads_lock
118 extern Mutex* ThreadIdTableCreate_lock; // Used by ThreadIdTable to lazily create the thread id table
119 extern Mutex* SharedDecoder_lock; // serializes access to the decoder during normal (not error reporting) use
120 extern Mutex* DCmdFactory_lock; // serialize access to DCmdFactory information
121 #if INCLUDE_NMT
122 extern Mutex* NMTQuery_lock; // serialize NMT Dcmd queries
123 #endif
124 #if INCLUDE_CDS
125 #if INCLUDE_JVMTI
126 extern Mutex* CDSClassFileStream_lock; // FileMapInfo::open_stream_for_jvmti
127 #endif
128 extern Mutex* DumpTimeTable_lock; // SystemDictionaryShared::find_or_allocate_info_for
129 #endif // INCLUDE_CDS
130 #if INCLUDE_JFR
131 extern Mutex* JfrStacktrace_lock; // used to guard access to the JFR stacktrace table
132 extern Monitor* JfrMsg_lock; // protects JFR messaging
133 extern Mutex* JfrBuffer_lock; // protects JFR buffer operations
134 extern Mutex* JfrStream_lock; // protects JFR stream access
135 extern Monitor* JfrThreadSampler_lock; // used to suspend/resume JFR thread sampler
136 #endif
137 #if INCLUDE_TSAN
138 extern Mutex* TsanOopMap_lock; // guards shared map of oops
139 #endif
140
141 #ifndef SUPPORTS_NATIVE_CX8
142 extern Mutex* UnsafeJlong_lock; // provides Unsafe atomic updates to jlongs on platforms that don't support cx8
143 #endif
144
145 extern Mutex* MetaspaceExpand_lock; // protects Metaspace virtualspace and chunk expansions
146 extern Mutex* ClassLoaderDataGraph_lock; // protects CLDG list, needed for concurrent unloading
147
148
149 extern Mutex* CodeHeapStateAnalytics_lock; // lock print functions against concurrent analyze functions.
150 // Only used locally in PrintCodeCacheLayout processing.
151
152 #if INCLUDE_JVMCI
153 extern Monitor* JVMCI_lock; // Monitor to control initialization of JVMCI
154 #endif
155
156 extern Mutex* tty_lock; // lock to synchronize output.
157
158 // A MutexLocker provides mutual exclusion with respect to a given mutex
159 // for the scope which contains the locker. The lock is an OS lock, not
|