hotspot/src/share/vm/gc_implementation/shared/concurrentGCThread.cpp
changeset 10769 983d377770fd
parent 9990 c8683968c01b
child 13728 882756847a04
equal deleted inserted replaced
10768:5e8ee1754607 10769:983d377770fd
   222 
   222 
   223 void SurrogateLockerThread::manipulatePLL(SLT_msg_type msg) {
   223 void SurrogateLockerThread::manipulatePLL(SLT_msg_type msg) {
   224   MutexLockerEx x(&_monitor, Mutex::_no_safepoint_check_flag);
   224   MutexLockerEx x(&_monitor, Mutex::_no_safepoint_check_flag);
   225   assert(_buffer == empty, "Should be empty");
   225   assert(_buffer == empty, "Should be empty");
   226   assert(msg != empty, "empty message");
   226   assert(msg != empty, "empty message");
       
   227   assert(!Heap_lock->owned_by_self(), "Heap_lock owned by requesting thread");
       
   228 
   227   _buffer = msg;
   229   _buffer = msg;
   228   while (_buffer != empty) {
   230   while (_buffer != empty) {
   229     _monitor.notify();
   231     _monitor.notify();
   230     _monitor.wait(Mutex::_no_safepoint_check_flag);
   232     _monitor.wait(Mutex::_no_safepoint_check_flag);
   231   }
   233   }