< prev index next >

src/hotspot/share/runtime/thread.cpp

Print this page
rev 47413 : Introduce SafepointMechanism

*** 75,84 **** --- 75,85 ---- #include "runtime/mutexLocker.hpp" #include "runtime/objectMonitor.hpp" #include "runtime/orderAccess.inline.hpp" #include "runtime/osThread.hpp" #include "runtime/safepoint.hpp" + #include "runtime/safepointMechanism.inline.hpp" #include "runtime/sharedRuntime.hpp" #include "runtime/statSampler.hpp" #include "runtime/stubRoutines.hpp" #include "runtime/sweeper.hpp" #include "runtime/task.hpp"
*** 2370,2384 **** thread->set_thread_state(state); InterfaceSupport::serialize_thread_state_with_handler(thread); } ! if (SafepointSynchronize::do_call_back()) { ! // If we are safepointing, then block the caller which may not be ! // the same as the target thread (see above). ! SafepointSynchronize::block(curJT); ! } if (thread->is_deopt_suspend()) { thread->clear_deopt_suspend(); RegisterMap map(thread, false); frame f = thread->last_frame(); --- 2371,2381 ---- thread->set_thread_state(state); InterfaceSupport::serialize_thread_state_with_handler(thread); } ! SafepointMechanism::block_if_requested(curJT); if (thread->is_deopt_suspend()) { thread->clear_deopt_suspend(); RegisterMap map(thread, false); frame f = thread->last_frame();
< prev index next >