hotspot/src/share/vm/runtime/thread.hpp
changeset 13975 2f7431485cfa
parent 13728 882756847a04
child 14083 103054a71a30
equal deleted inserted replaced
13951:3fc49366dc15 13975:2f7431485cfa
    39 #include "runtime/park.hpp"
    39 #include "runtime/park.hpp"
    40 #include "runtime/safepoint.hpp"
    40 #include "runtime/safepoint.hpp"
    41 #include "runtime/stubRoutines.hpp"
    41 #include "runtime/stubRoutines.hpp"
    42 #include "runtime/threadLocalStorage.hpp"
    42 #include "runtime/threadLocalStorage.hpp"
    43 #include "runtime/unhandledOops.hpp"
    43 #include "runtime/unhandledOops.hpp"
       
    44 
       
    45 #if INCLUDE_NMT
    44 #include "services/memRecorder.hpp"
    46 #include "services/memRecorder.hpp"
       
    47 #endif // INCLUDE_NMT
       
    48 
    45 #include "trace/tracing.hpp"
    49 #include "trace/tracing.hpp"
    46 #include "utilities/exceptions.hpp"
    50 #include "utilities/exceptions.hpp"
    47 #include "utilities/top.hpp"
    51 #include "utilities/top.hpp"
    48 #ifndef SERIALGC
    52 #ifndef SERIALGC
    49 #include "gc_implementation/g1/dirtyCardQueue.hpp"
    53 #include "gc_implementation/g1/dirtyCardQueue.hpp"
  1036   void set_doing_unsafe_access(bool val)         { _doing_unsafe_access = val; }
  1040   void set_doing_unsafe_access(bool val)         { _doing_unsafe_access = val; }
  1037 
  1041 
  1038   bool do_not_unlock_if_synchronized()             { return _do_not_unlock_if_synchronized; }
  1042   bool do_not_unlock_if_synchronized()             { return _do_not_unlock_if_synchronized; }
  1039   void set_do_not_unlock_if_synchronized(bool val) { _do_not_unlock_if_synchronized = val; }
  1043   void set_do_not_unlock_if_synchronized(bool val) { _do_not_unlock_if_synchronized = val; }
  1040 
  1044 
       
  1045 #if INCLUDE_NMT
  1041   // native memory tracking
  1046   // native memory tracking
  1042   inline MemRecorder* get_recorder() const          { return (MemRecorder*)_recorder; }
  1047   inline MemRecorder* get_recorder() const          { return (MemRecorder*)_recorder; }
  1043   inline void         set_recorder(MemRecorder* rc) { _recorder = (volatile MemRecorder*)rc; }
  1048   inline void         set_recorder(MemRecorder* rc) { _recorder = (volatile MemRecorder*)rc; }
  1044 
  1049 
  1045  private:
  1050  private:
  1046   // per-thread memory recorder
  1051   // per-thread memory recorder
  1047   volatile MemRecorder* _recorder;
  1052   volatile MemRecorder* _recorder;
       
  1053 #endif // INCLUDE_NMT
  1048 
  1054 
  1049   // Suspend/resume support for JavaThread
  1055   // Suspend/resume support for JavaThread
  1050  private:
  1056  private:
  1051   void set_ext_suspended()       { set_suspend_flag (_ext_suspended);  }
  1057   void set_ext_suspended()       { set_suspend_flag (_ext_suspended);  }
  1052   void clear_ext_suspended()     { clear_suspend_flag(_ext_suspended); }
  1058   void clear_ext_suspended()     { clear_suspend_flag(_ext_suspended); }