< prev index next >

src/hotspot/share/runtime/thread.cpp

Print this page
*** 115,10 ***
--- 115,11 ---
  #include "runtime/vframe_hp.hpp"
  #include "runtime/vmThread.hpp"
  #include "runtime/vmOperations.hpp"
  #include "runtime/vm_version.hpp"
  #include "services/attachListener.hpp"
+ #include "services/heapObjectStatistics.hpp"
  #include "services/management.hpp"
  #include "services/memTracker.hpp"
  #include "services/threadService.hpp"
  #include "utilities/align.hpp"
  #include "utilities/copy.hpp"

*** 2954,10 ***
--- 2955,13 ---
    ServiceThread::initialize();
  
    // Start the monitor deflation thread:
    MonitorDeflationThread::initialize();
  
+   // Start heap object statistics sampling
+   HeapObjectStatistics::initialize();
+ 
    // initialize compiler(s)
  #if defined(COMPILER1) || COMPILER2_OR_JVMCI
  #if INCLUDE_JVMCI
    bool force_JVMCI_intialization = false;
    if (EnableJVMCI) {

*** 3404,10 ***
--- 3408,12 ---
    // we can't call that after the termination safepoint is active as
    // we will deadlock on the Threads_lock. Once all interactions are
    // complete it is safe to directly delete the thread at any time.
    ThreadsSMRSupport::wait_until_not_protected(thread);
  
+   HeapObjectStatistics::shutdown();
+ 
    // Stop VM thread.
    {
      // 4945125 The vm thread comes to a safepoint during exit.
      // GC vm_operations can get caught at the safepoint, and the
      // heap is unparseable if they are caught. Grab the Heap_lock
< prev index next >