hotspot/src/share/vm/runtime/mutexLocker.cpp
changeset 18025 b7bcf7497f93
parent 17029 9ff8d7c0ed79
child 19542 e55d447cc2a1
equal deleted inserted replaced
18024:f9e300086063 18025:b7bcf7497f93
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2013, 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.
   268   def(MethodData_lock              , Mutex  , nonleaf+3,   false);
   268   def(MethodData_lock              , Mutex  , nonleaf+3,   false);
   269 
   269 
   270   def(MethodCompileQueue_lock      , Monitor, nonleaf+4,   true );
   270   def(MethodCompileQueue_lock      , Monitor, nonleaf+4,   true );
   271   def(Debug2_lock                  , Mutex  , nonleaf+4,   true );
   271   def(Debug2_lock                  , Mutex  , nonleaf+4,   true );
   272   def(Debug3_lock                  , Mutex  , nonleaf+4,   true );
   272   def(Debug3_lock                  , Mutex  , nonleaf+4,   true );
   273   def(ProfileVM_lock               , Monitor, nonleaf+4,   false); // used for profiling of the VMThread
   273   def(ProfileVM_lock               , Monitor, special,   false); // used for profiling of the VMThread
   274   def(CompileThread_lock           , Monitor, nonleaf+5,   false );
   274   def(CompileThread_lock           , Monitor, nonleaf+5,   false );
   275 
   275 
   276   def(JfrQuery_lock                , Monitor, nonleaf,     true);  // JFR locks, keep these in consecutive order
   276   def(JfrMsg_lock                  , Monitor, leaf,        true);
   277   def(JfrMsg_lock                  , Monitor, nonleaf+2,   true);
   277   def(JfrBuffer_lock               , Mutex,   nonleaf+1,   true);
   278   def(JfrBuffer_lock               , Mutex,   nonleaf+3,   true);
   278   def(JfrStream_lock               , Mutex,   nonleaf+2,   true);
   279   def(JfrStream_lock               , Mutex,   nonleaf+4,   true);
       
   280   def(PeriodicTask_lock            , Monitor, nonleaf+5,   true);
   279   def(PeriodicTask_lock            , Monitor, nonleaf+5,   true);
   281 }
   280 }
   282 
   281 
   283 GCMutexLocker::GCMutexLocker(Monitor * mutex) {
   282 GCMutexLocker::GCMutexLocker(Monitor * mutex) {
   284   if (SafepointSynchronize::is_at_safepoint()) {
   283   if (SafepointSynchronize::is_at_safepoint()) {