< prev index next >
src/hotspot/share/runtime/thread.hpp
Print this page
rev 50748 : Thread Dump Extension (memory allocation)
*** 42,51 ****
--- 42,52 ----
#include "runtime/park.hpp"
#include "runtime/safepoint.hpp"
#include "runtime/stubRoutines.hpp"
#include "runtime/threadHeapSampler.hpp"
#include "runtime/threadLocalStorage.hpp"
+ #include "runtime/threadStatisticalInfo.hpp"
#include "runtime/unhandledOops.hpp"
#include "utilities/align.hpp"
#include "utilities/exceptions.hpp"
#include "utilities/macros.hpp"
#ifdef ZERO
*** 339,348 ****
--- 340,351 ----
ThreadLocalAllocBuffer _tlab; // Thread-local eden
jlong _allocated_bytes; // Cumulative number of bytes allocated on
// the Java heap
ThreadHeapSampler _heap_sampler; // For use when sampling the memory.
+ ThreadStatisticalInfo _statistical_info; // Statistics about the thread
+
JFR_ONLY(DEFINE_THREAD_LOCAL_FIELD_JFR;) // Thread-local data for jfr
int _vm_operation_started_count; // VM_Operation support
int _vm_operation_completed_count; // VM_Operation support
*** 519,528 ****
--- 522,533 ----
void incr_allocated_bytes(jlong size) { _allocated_bytes += size; }
inline jlong cooked_allocated_bytes();
ThreadHeapSampler& heap_sampler() { return _heap_sampler; }
+ ThreadStatisticalInfo& statistical_info() { return _statistical_info; }
+
JFR_ONLY(DEFINE_THREAD_LOCAL_ACCESSOR_JFR;)
bool is_trace_suspend() { return (_suspend_flags & _trace_flag) != 0; }
// VM operation support
*** 636,646 ****
int lgrp_id() const { return _lgrp_id; }
void set_lgrp_id(int value) { _lgrp_id = value; }
// Printing
! virtual void print_on(outputStream* st) const;
void print() const { print_on(tty); }
virtual void print_on_error(outputStream* st, char* buf, int buflen) const;
void print_value_on(outputStream* st) const;
// Debug-only code
--- 641,652 ----
int lgrp_id() const { return _lgrp_id; }
void set_lgrp_id(int value) { _lgrp_id = value; }
// Printing
! void print_on(outputStream* st, bool print_extended_info) const;
! virtual void print_on(outputStream* st) const { print_on(st, false); }
void print() const { print_on(tty); }
virtual void print_on_error(outputStream* st, char* buf, int buflen) const;
void print_value_on(outputStream* st) const;
// Debug-only code
*** 1757,1767 ****
// RedefineClasses Support
void metadata_do(void f(Metadata*));
// Misc. operations
char* name() const { return (char*)get_thread_name(); }
! void print_on(outputStream* st) const;
void print_value();
void print_thread_state_on(outputStream*) const PRODUCT_RETURN;
void print_thread_state() const PRODUCT_RETURN;
void print_on_error(outputStream* st, char* buf, int buflen) const;
void print_name_on_error(outputStream* st, char* buf, int buflen) const;
--- 1763,1774 ----
// RedefineClasses Support
void metadata_do(void f(Metadata*));
// Misc. operations
char* name() const { return (char*)get_thread_name(); }
! void print_on(outputStream* st, bool print_extended_info) const;
! void print_on(outputStream* st) const { print_on(st, false); }
void print_value();
void print_thread_state_on(outputStream*) const PRODUCT_RETURN;
void print_thread_state() const PRODUCT_RETURN;
void print_on_error(outputStream* st, char* buf, int buflen) const;
void print_name_on_error(outputStream* st, char* buf, int buflen) const;
*** 2171,2184 ****
static bool is_vm_complete() { return _vm_complete; }
#endif
// Verification
static void verify();
! static void print_on(outputStream* st, bool print_stacks, bool internal_format, bool print_concurrent_locks);
static void print(bool print_stacks, bool internal_format) {
// this function is only used by debug.cpp
! print_on(tty, print_stacks, internal_format, false /* no concurrent lock printed */);
}
static void print_on_error(outputStream* st, Thread* current, char* buf, int buflen);
static void print_on_error(Thread* this_thread, outputStream* st, Thread* current, char* buf,
int buflen, bool* found_current);
static void print_threads_compiling(outputStream* st, char* buf, int buflen);
--- 2178,2191 ----
static bool is_vm_complete() { return _vm_complete; }
#endif
// Verification
static void verify();
! static void print_on(outputStream* st, bool print_stacks, bool internal_format, bool print_concurrent_locks, bool print_extended_info);
static void print(bool print_stacks, bool internal_format) {
// this function is only used by debug.cpp
! print_on(tty, print_stacks, internal_format, false /* no concurrent lock printed */, false /* simple format */);
}
static void print_on_error(outputStream* st, Thread* current, char* buf, int buflen);
static void print_on_error(Thread* this_thread, outputStream* st, Thread* current, char* buf,
int buflen, bool* found_current);
static void print_threads_compiling(outputStream* st, char* buf, int buflen);
< prev index next >