Mercurial > hg > truffle
comparison src/share/vm/runtime/mutexLocker.hpp @ 4970:33df1aeaebbf
Merge with http://hg.openjdk.java.net/hsx/hsx24/hotspot/
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Mon, 27 Feb 2012 13:10:13 +0100 |
parents | 0a10d80352d5 |
children | 51111665eda6 c284cf4781f0 |
comparison
equal
deleted
inserted
replaced
4703:2cfb7fb2dce7 | 4970:33df1aeaebbf |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
113 extern Mutex* ExceptionCache_lock; // a lock used to synchronize exception cache updates | 113 extern Mutex* ExceptionCache_lock; // a lock used to synchronize exception cache updates |
114 extern Mutex* OsrList_lock; // a lock used to serialize access to OSR queues | 114 extern Mutex* OsrList_lock; // a lock used to serialize access to OSR queues |
115 | 115 |
116 #ifndef PRODUCT | 116 #ifndef PRODUCT |
117 extern Mutex* FullGCALot_lock; // a lock to make FullGCALot MT safe | 117 extern Mutex* FullGCALot_lock; // a lock to make FullGCALot MT safe |
118 #endif | 118 #endif // PRODUCT |
119 extern Mutex* Debug1_lock; // A bunch of pre-allocated locks that can be used for tracing | 119 extern Mutex* Debug1_lock; // A bunch of pre-allocated locks that can be used for tracing |
120 extern Mutex* Debug2_lock; // down synchronization related bugs! | 120 extern Mutex* Debug2_lock; // down synchronization related bugs! |
121 extern Mutex* Debug3_lock; | 121 extern Mutex* Debug3_lock; |
122 | 122 |
123 extern Mutex* RawMonitor_lock; | 123 extern Mutex* RawMonitor_lock; |
127 extern Mutex* OopMapCacheAlloc_lock; // protects allocation of oop_map caches | 127 extern Mutex* OopMapCacheAlloc_lock; // protects allocation of oop_map caches |
128 | 128 |
129 extern Mutex* FreeList_lock; // protects the free region list during safepoints | 129 extern Mutex* FreeList_lock; // protects the free region list during safepoints |
130 extern Monitor* SecondaryFreeList_lock; // protects the secondary free region list | 130 extern Monitor* SecondaryFreeList_lock; // protects the secondary free region list |
131 extern Mutex* OldSets_lock; // protects the old region sets | 131 extern Mutex* OldSets_lock; // protects the old region sets |
132 extern Monitor* RootRegionScan_lock; // used to notify that the CM threads have finished scanning the IM snapshot regions | |
132 extern Mutex* MMUTracker_lock; // protects the MMU | 133 extern Mutex* MMUTracker_lock; // protects the MMU |
133 // tracker data structures | 134 // tracker data structures |
134 extern Mutex* HotCardCache_lock; // protects the hot card cache | 135 extern Mutex* HotCardCache_lock; // protects the hot card cache |
135 | 136 |
136 extern Mutex* Management_lock; // a lock used to serialize JVM management | 137 extern Mutex* Management_lock; // a lock used to serialize JVM management |
137 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 | |
138 | 145 |
139 // A MutexLocker provides mutual exclusion with respect to a given mutex | 146 // A MutexLocker provides mutual exclusion with respect to a given mutex |
140 // 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 |
141 // 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 |
142 // 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 |