1472N/A * or visit www.oracle.com if you need additional information or have any
1879N/A#include "precompiled.hpp"
1879N/A#include "classfile/systemDictionary.hpp"
1879N/A#include "memory/allocation.hpp"
1879N/A#include "memory/heapInspection.hpp"
1879N/A#include "memory/oopFactory.hpp"
1879N/A#include "oops/instanceKlass.hpp"
1879N/A#include "oops/oop.inline.hpp"
1879N/A#include "runtime/handles.inline.hpp"
1879N/A#include "runtime/thread.hpp"
1879N/A#include "runtime/vframe.hpp"
1879N/A#include "runtime/vmThread.hpp"
1879N/A#include "runtime/vm_operations.hpp"
1879N/A#include "services/threadService.hpp"
0N/A _thread_cpu_time_enabled = true;
0N/A int num_threads,
2062N/A klassOop k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_StackTraceElement_array(), true, CHECK_NH);
0N/A // Construct an array of java/lang/StackTraceElement object
0N/A return result_obj;
0N/A if (concurrent_locks) {
0N/A currentThread = Threads::owning_thread_from_monitor_owner((address)waitingToLockMonitor->owner(),
0N/A if (concurrent_locks) {
0N/A oop threadObj = java_util_concurrent_locks_AbstractOwnableSynchronizer::get_owner_threadObj(waitingToLockBlocker);
0N/A if (concurrent_locks) {
0N/AThreadDumpResult::ThreadDumpResult() : _num_threads(0), _num_snapshots(0), _snapshots(NULL), _next(NULL), _last(NULL) {
0N/AThreadDumpResult::ThreadDumpResult(int num_threads) : _num_threads(num_threads), _num_snapshots(0), _snapshots(NULL), _next(NULL), _last(NULL) {
0N/A if (with_lock_info) {
3863N/A _frames = new (ResourceObj::C_HEAP, mtInternal) GrowableArray<StackFrameInfo*>(INITIAL_ARRAY_SIZE, true);
0N/A if (_with_locked_monitors) {
3863N/A _jni_locked_monitors = new (ResourceObj::C_HEAP, mtInternal) GrowableArray<oop>(INITIAL_ARRAY_SIZE, true);
0N/A delete _jni_locked_monitors;
0N/A if (f->is_java_frame()) {
0N/A if (_with_locked_monitors) {
0N/A // Allocate an array of java/lang/StackTraceElement object
0N/A if (_retain_map_on_free) {
0N/A HeapInspection::find_instances_at_safepoint(SystemDictionary::abstract_ownable_synchronizer_klass(),
0N/A oop owner_thread_obj = java_util_concurrent_locks_AbstractOwnableSynchronizer::get_owner_threadObj(o);
3863N/A _owned_locks = new (ResourceObj::C_HEAP, mtInternal) GrowableArray<instanceOop>(INITIAL_ARRAY_SIZE, true);
0N/A delete _owned_locks;
0N/A _monitor_wait_count = 0;
0N/A _sleep_count = 0;
0N/A _count_pending_reset = false;
0N/A _timer_pending_reset = false;
0N/A if (_blocker_object != NULL && _blocker_object->is_a(SystemDictionary::abstract_ownable_synchronizer_klass())) {
0N/A _blocker_object_owner = java_util_concurrent_locks_AbstractOwnableSynchronizer::get_owner_threadObj(_blocker_object);
0N/A delete _stack_trace;
0N/A delete _concurrent_locks;
0N/A _is_deadlock = false;
3863N/A _threads = new (ResourceObj::C_HEAP, mtInternal) GrowableArray<JavaThread*>(INITIAL_ARRAY_SIZE, true);
0N/A oop ownerObj = java_util_concurrent_locks_AbstractOwnableSynchronizer::get_owner_threadObj(waitingToLockBlocker);
0N/A JavaMonitorsInStackTrace = true;
0N/A bool include_jni_attaching_threads) {