< prev index next >

src/hotspot/share/services/threadService.hpp

Print this page
@@ -245,11 +245,11 @@
  
    ThreadSnapshot*   next() const          { return _next; }
    ThreadStackTrace* get_stack_trace()     { return _stack_trace; }
    ThreadConcurrentLocks* get_concurrent_locks()     { return _concurrent_locks; }
  
-   void        dump_stack_at_safepoint(int max_depth, bool with_locked_monitors);
+   void        dump_stack_at_safepoint(int max_depth, bool with_locked_monitors, bool full);
    void        set_concurrent_locks(ThreadConcurrentLocks* l) { _concurrent_locks = l; }
    void        metadata_do(void f(Metadata*));
  };
  
  class ThreadStackTrace : public CHeapObj<mtInternal> {

@@ -268,11 +268,11 @@
    JavaThread*     thread()              { return _thread; }
    StackFrameInfo* stack_frame_at(int i) { return _frames->at(i); }
    int             get_stack_depth()     { return _depth; }
  
    void            add_stack_frame(javaVFrame* jvf);
-   void            dump_stack_at_safepoint(int max_depth);
+   void            dump_stack_at_safepoint(int max_depth, bool full);
    Handle          allocate_fill_stack_trace_element_array(TRAPS);
    void            metadata_do(void f(Metadata*));
    GrowableArray<OopHandle>* jni_locked_monitors() { return _jni_locked_monitors; }
    int             num_jni_locked_monitors() { return (_jni_locked_monitors != NULL ? _jni_locked_monitors->length() : 0); }
  

@@ -285,10 +285,11 @@
  // Java instances
  class StackFrameInfo : public CHeapObj<mtInternal> {
   private:
    Method*             _method;
    int                 _bci;
+   OopHandle           _cont_scope_name;
    GrowableArray<OopHandle>* _locked_monitors; // list of object monitors locked by this frame
    // We need to save the mirrors in the backtrace to keep the class
    // from being unloaded while we still have this stack trace.
    OopHandle           _class_holder;
  

@@ -296,10 +297,11 @@
  
    StackFrameInfo(javaVFrame* jvf, bool with_locked_monitors);
    ~StackFrameInfo();
    Method*   method() const       { return _method; }
    int       bci()    const       { return _bci; }
+   OopHandle cont_scope_name() const { return _cont_scope_name; }
    void      metadata_do(void f(Metadata*));
  
    int       num_locked_monitors()       { return (_locked_monitors != NULL ? _locked_monitors->length() : 0); }
    GrowableArray<OopHandle>* locked_monitors() { return _locked_monitors; }
  
< prev index next >