src/hotspot/share/runtime/thread.cpp
changeset 58279 448fe2bfd505
parent 58243 c67f514fdd54
child 58282 03fce7b04b42
equal deleted inserted replaced
58278:e47b459b315c 58279:448fe2bfd505
  1801 
  1801 
  1802 
  1802 
  1803 void JavaThread::block_if_vm_exited() {
  1803 void JavaThread::block_if_vm_exited() {
  1804   if (_terminated == _vm_exited) {
  1804   if (_terminated == _vm_exited) {
  1805     // _vm_exited is set at safepoint, and Threads_lock is never released
  1805     // _vm_exited is set at safepoint, and Threads_lock is never released
  1806     // we will block here forever
  1806     // we will block here forever.
       
  1807     // Here we can be doing a jump from a safe state to an unsafe state without
       
  1808     // proper transition, but it happens after the final safepoint has begun.
       
  1809     set_thread_state(_thread_in_vm);
  1807     Threads_lock->lock();
  1810     Threads_lock->lock();
  1808     ShouldNotReachHere();
  1811     ShouldNotReachHere();
  1809   }
  1812   }
  1810 }
  1813 }
  1811 
  1814