Mercurial > hg > truffle
comparison src/share/vm/runtime/mutexLocker.cpp @ 4840:0a10d80352d5
Merge
author | brutisso |
---|---|
date | Fri, 27 Jan 2012 09:04:57 +0100 |
parents | eff609af17d7 94ec88ca68e2 |
children | 51111665eda6 da91efe96a93 |
comparison
equal
deleted
inserted
replaced
4839:b4ebad3520bb | 4840:0a10d80352d5 |
---|---|
132 | 132 |
133 Monitor* GCTaskManager_lock = NULL; | 133 Monitor* GCTaskManager_lock = NULL; |
134 | 134 |
135 Mutex* Management_lock = NULL; | 135 Mutex* Management_lock = NULL; |
136 Monitor* Service_lock = NULL; | 136 Monitor* Service_lock = NULL; |
137 Mutex* Stacktrace_lock = NULL; | |
138 | |
139 Monitor* JfrQuery_lock = NULL; | |
140 Monitor* JfrMsg_lock = NULL; | |
141 Mutex* JfrBuffer_lock = NULL; | |
142 Mutex* JfrStream_lock = NULL; | |
137 | 143 |
138 #define MAX_NUM_MUTEX 128 | 144 #define MAX_NUM_MUTEX 128 |
139 static Monitor * _mutex_array[MAX_NUM_MUTEX]; | 145 static Monitor * _mutex_array[MAX_NUM_MUTEX]; |
140 static int _num_mutex; | 146 static int _num_mutex; |
141 | 147 |
207 def(OopMapCacheAlloc_lock , Mutex, leaf, true ); // used for oop_map_cache allocation. | 213 def(OopMapCacheAlloc_lock , Mutex, leaf, true ); // used for oop_map_cache allocation. |
208 | 214 |
209 def(Patching_lock , Mutex , special, true ); // used for safepointing and code patching. | 215 def(Patching_lock , Mutex , special, true ); // used for safepointing and code patching. |
210 def(ObjAllocPost_lock , Monitor, special, false); | 216 def(ObjAllocPost_lock , Monitor, special, false); |
211 def(Service_lock , Monitor, special, true ); // used for service thread operations | 217 def(Service_lock , Monitor, special, true ); // used for service thread operations |
218 def(Stacktrace_lock , Mutex, special, true ); // used for JFR stacktrace database | |
212 def(JmethodIdCreation_lock , Mutex , leaf, true ); // used for creating jmethodIDs. | 219 def(JmethodIdCreation_lock , Mutex , leaf, true ); // used for creating jmethodIDs. |
213 | 220 |
214 def(SystemDictionary_lock , Monitor, leaf, true ); // lookups done by VM thread | 221 def(SystemDictionary_lock , Monitor, leaf, true ); // lookups done by VM thread |
215 def(PackageTable_lock , Mutex , leaf, false); | 222 def(PackageTable_lock , Mutex , leaf, false); |
216 def(InlineCacheBuffer_lock , Mutex , leaf, true ); | 223 def(InlineCacheBuffer_lock , Mutex , leaf, true ); |
271 def(MethodCompileQueue_lock , Monitor, nonleaf+4, true ); | 278 def(MethodCompileQueue_lock , Monitor, nonleaf+4, true ); |
272 def(Debug2_lock , Mutex , nonleaf+4, true ); | 279 def(Debug2_lock , Mutex , nonleaf+4, true ); |
273 def(Debug3_lock , Mutex , nonleaf+4, true ); | 280 def(Debug3_lock , Mutex , nonleaf+4, true ); |
274 def(ProfileVM_lock , Monitor, nonleaf+4, false); // used for profiling of the VMThread | 281 def(ProfileVM_lock , Monitor, nonleaf+4, false); // used for profiling of the VMThread |
275 def(CompileThread_lock , Monitor, nonleaf+5, false ); | 282 def(CompileThread_lock , Monitor, nonleaf+5, false ); |
283 | |
284 def(JfrQuery_lock , Monitor, nonleaf, true); // JFR locks, keep these in consecutive order | |
285 def(JfrMsg_lock , Monitor, nonleaf+2, true); | |
286 def(JfrBuffer_lock , Mutex, nonleaf+3, true); | |
287 def(JfrStream_lock , Mutex, nonleaf+4, true); | |
276 } | 288 } |
277 | 289 |
278 GCMutexLocker::GCMutexLocker(Monitor * mutex) { | 290 GCMutexLocker::GCMutexLocker(Monitor * mutex) { |
279 if (SafepointSynchronize::is_at_safepoint()) { | 291 if (SafepointSynchronize::is_at_safepoint()) { |
280 _locked = false; | 292 _locked = false; |