< prev index next >

src/hotspot/share/prims/jvmtiEnvBase.cpp

Print this page
rev 47287 : Port 09.17.Thread_SMR_logging_update from JDK9 to JDK10
rev 47289 : eosterlund, stefank CR - refactor code into threadSMR.cpp and threadSMR.hpp
rev 47290 : eosterlund CR - need more inline fixes.
rev 47292 : stefank, coleenp CR - refactor most JavaThreadIterator usage to use JavaThreadIteratorWithHandle.

*** 1275,1288 **** VM_GetAllStackTraces::doit() { assert(SafepointSynchronize::is_at_safepoint(), "must be at safepoint"); ResourceMark rm; _final_thread_count = 0; ! { ! ThreadsListHandle tlh; ! JavaThreadIterator jti(tlh.list()); ! for (JavaThread *jt = jti.first(); jt != NULL; jt = jti.next()) { oop thread_oop = jt->threadObj(); if (thread_oop != NULL && !jt->is_exiting() && java_lang_Thread::is_alive(thread_oop) && !jt->is_hidden_from_external_view()) { --- 1275,1285 ---- VM_GetAllStackTraces::doit() { assert(SafepointSynchronize::is_at_safepoint(), "must be at safepoint"); ResourceMark rm; _final_thread_count = 0; ! for (JavaThreadIteratorWithHandle jtiwh; JavaThread *jt = jtiwh.next(); ) { oop thread_oop = jt->threadObj(); if (thread_oop != NULL && !jt->is_exiting() && java_lang_Thread::is_alive(thread_oop) && !jt->is_hidden_from_external_view()) {
*** 1290,1300 **** // Handle block of the calling thread is used to create local refs. fill_frames((jthread)JNIHandles::make_local(_calling_thread, thread_oop), jt, thread_oop); } } - } allocate_and_fill_stacks(_final_thread_count); } // Verifies that the top frame is a java frame in an expected state. // Deoptimizes frame if needed. --- 1287,1296 ----
< prev index next >