hotspot/src/share/vm/runtime/thread.cpp
changeset 40377 b77bf599c11b
parent 40074 135bb8aa1e18
child 40655 9f644073d3a0
equal deleted inserted replaced
40376:15e772ff7ff4 40377:b77bf599c11b
   372   ParkEvent::Release(_MuxEvent); _MuxEvent    = NULL;
   372   ParkEvent::Release(_MuxEvent); _MuxEvent    = NULL;
   373 
   373 
   374   delete handle_area();
   374   delete handle_area();
   375   delete metadata_handles();
   375   delete metadata_handles();
   376 
   376 
       
   377   // SR_handler uses this as a termination indicator -
       
   378   // needs to happen before os::free_thread()
       
   379   delete _SR_lock;
       
   380   _SR_lock = NULL;
       
   381 
   377   // osthread() can be NULL, if creation of thread failed.
   382   // osthread() can be NULL, if creation of thread failed.
   378   if (osthread() != NULL) os::free_thread(osthread());
   383   if (osthread() != NULL) os::free_thread(osthread());
   379 
       
   380   delete _SR_lock;
       
   381 
   384 
   382   // clear Thread::current if thread is deleting itself.
   385   // clear Thread::current if thread is deleting itself.
   383   // Needed to ensure JNI correctly detects non-attached threads.
   386   // Needed to ensure JNI correctly detects non-attached threads.
   384   if (this == Thread::current()) {
   387   if (this == Thread::current()) {
   385     clear_thread_current();
   388     clear_thread_current();