< prev index next >

src/hotspot/share/runtime/thread.cpp

Print this page
rev 53862 : [mq]: java_attach_protocol
rev 53863 : imported patch njt_attach_protocol
rev 53869 : [mq]: merge_attach

*** 1309,1329 **** --- 1309,1333 ---- } } } void NonJavaThread::pre_run() { + // Initialize BarrierSet-related data before adding to list. assert(BarrierSet::barrier_set() != NULL, "invariant"); + BarrierSet::barrier_set()->on_thread_attach(this); add_to_the_list(); // This is slightly odd in that NamedThread is a subclass, but // in fact name() is defined in Thread assert(this->name() != NULL, "thread name was not set before it was started"); this->set_native_thread_name(this->name()); } void NonJavaThread::post_run() { JFR_ONLY(Jfr::on_thread_exit(this);) + // Clean up BarrierSet data before removing from list. + BarrierSet::barrier_set()->on_thread_detach(this); remove_from_the_list(); // Ensure thread-local-storage is cleared before termination. Thread::clear_thread_current(); }
< prev index next >