< prev index next > src/hotspot/share/runtime/threadWXSetters.inline.hpp
Print this page
WXMode *_this_wx_mode;
ThreadWXEnable *_prev;
public:
ThreadWXEnable(WXMode* new_mode, Thread* thread) :
_thread(thread), _this_wx_mode(new_mode) {
! NOT_PRODUCT(PerfTraceTime ptt(ClassLoader::perf_change_wx_time());)
JavaThread* javaThread
= _thread && _thread->is_Java_thread()
? JavaThread::cast(_thread) : nullptr;
_prev = javaThread != nullptr ? javaThread->_cur_wx_enable: nullptr;
_old_mode = _thread != nullptr ? _thread->enable_wx(*new_mode) : WXWrite;
WXMode *_this_wx_mode;
ThreadWXEnable *_prev;
public:
ThreadWXEnable(WXMode* new_mode, Thread* thread) :
_thread(thread), _this_wx_mode(new_mode) {
! NOT_PRODUCT(PerfTraceElapsedTime ptt(ClassLoader::perf_change_wx_time());)
JavaThread* javaThread
= _thread && _thread->is_Java_thread()
? JavaThread::cast(_thread) : nullptr;
_prev = javaThread != nullptr ? javaThread->_cur_wx_enable: nullptr;
_old_mode = _thread != nullptr ? _thread->enable_wx(*new_mode) : WXWrite;
javaThread->_cur_wx_mode = new_mode;
}
}
ThreadWXEnable(WXMode new_mode, Thread* thread) :
_thread(thread), _this_wx_mode(nullptr) {
! NOT_PRODUCT(PerfTraceTime ptt(ClassLoader::perf_change_wx_time());)
JavaThread* javaThread
= _thread && _thread->is_Java_thread()
? JavaThread::cast(_thread) : nullptr;
_prev = javaThread != nullptr ? javaThread->_cur_wx_enable: nullptr;
_old_mode = _thread != nullptr ? _thread->enable_wx(new_mode) : WXWrite;
javaThread->_cur_wx_mode = new_mode;
}
}
ThreadWXEnable(WXMode new_mode, Thread* thread) :
_thread(thread), _this_wx_mode(nullptr) {
! NOT_PRODUCT(PerfTraceElapsedTime ptt(ClassLoader::perf_change_wx_time());)
JavaThread* javaThread
= _thread && _thread->is_Java_thread()
? JavaThread::cast(_thread) : nullptr;
_prev = javaThread != nullptr ? javaThread->_cur_wx_enable: nullptr;
_old_mode = _thread != nullptr ? _thread->enable_wx(new_mode) : WXWrite;
javaThread->_cur_wx_mode = nullptr;
}
}
~ThreadWXEnable() {
! NOT_PRODUCT(PerfTraceTime ptt(ClassLoader::perf_change_wx_time());)
if (_thread) {
_thread->enable_wx(_old_mode);
JavaThread* javaThread
= _thread && _thread->is_Java_thread()
? JavaThread::cast(_thread) : nullptr;
javaThread->_cur_wx_mode = nullptr;
}
}
~ThreadWXEnable() {
! NOT_PRODUCT(PerfTraceElapsedTime ptt(ClassLoader::perf_change_wx_time());)
if (_thread) {
_thread->enable_wx(_old_mode);
JavaThread* javaThread
= _thread && _thread->is_Java_thread()
? JavaThread::cast(_thread) : nullptr;
< prev index next >