hotspot/src/share/vm/runtime/thread.hpp
changeset 47106 bed18a111b90
parent 46742 24ec8a039c90
equal deleted inserted replaced
47104:6bdc0c9c44af 47106:bed18a111b90
    54 #ifdef ZERO
    54 #ifdef ZERO
    55 # include "stack_zero.hpp"
    55 # include "stack_zero.hpp"
    56 #endif
    56 #endif
    57 
    57 
    58 class ThreadSafepointState;
    58 class ThreadSafepointState;
    59 class ThreadProfiler;
       
    60 
    59 
    61 class JvmtiThreadState;
    60 class JvmtiThreadState;
    62 class JvmtiGetLoadedClassesClosure;
    61 class JvmtiGetLoadedClassesClosure;
    63 class ThreadStatistics;
    62 class ThreadStatistics;
    64 class ConcurrentLocksDump;
    63 class ConcurrentLocksDump;
  1718   void deoptimize();
  1717   void deoptimize();
  1719   void make_zombies();
  1718   void make_zombies();
  1720 
  1719 
  1721   void deoptimized_wrt_marked_nmethods();
  1720   void deoptimized_wrt_marked_nmethods();
  1722 
  1721 
  1723   // Profiling operation (see fprofile.cpp)
       
  1724  public:
       
  1725   bool profile_last_Java_frame(frame* fr);
       
  1726 
       
  1727  private:
       
  1728   ThreadProfiler* _thread_profiler;
       
  1729  private:
       
  1730   friend class FlatProfiler;                    // uses both [gs]et_thread_profiler.
       
  1731   friend class FlatProfilerTask;                // uses get_thread_profiler.
       
  1732   friend class ThreadProfilerMark;              // uses get_thread_profiler.
       
  1733   ThreadProfiler* get_thread_profiler()         { return _thread_profiler; }
       
  1734   ThreadProfiler* set_thread_profiler(ThreadProfiler* tp) {
       
  1735     ThreadProfiler* result = _thread_profiler;
       
  1736     _thread_profiler = tp;
       
  1737     return result;
       
  1738   }
       
  1739 
       
  1740  public:
  1722  public:
  1741   // Returns the running thread as a JavaThread
  1723   // Returns the running thread as a JavaThread
  1742   static inline JavaThread* current();
  1724   static inline JavaThread* current();
  1743 
  1725 
  1744   // Returns the active Java thread.  Do not use this if you know you are calling
  1726   // Returns the active Java thread.  Do not use this if you know you are calling