< prev index next >

src/share/vm/prims/jvmti.xml

Print this page




11509           </constant>
11510         </constants>
11511       </description>
11512       <origin>new</origin>
11513       <capabilities>
11514       </capabilities>
11515       <parameters>
11516         <param id="format_ptr">
11517           <outptr><enum>jvmtiJlocationFormat</enum></outptr>
11518           <description>
11519             On return, points to the format identifier for <code>jlocation</code> values.
11520           </description>
11521         </param>
11522       </parameters>
11523       <errors>
11524       </errors>
11525     </function>
11526 
11527   </category>
11528 

































































































































11529 </functionsection>
11530 
11531 <errorsection label="Error Reference">
11532   <intro>
11533     Every <jvmti/> function returns a <b><code>jvmtiError</code></b> error code.
11534     <p/>
11535     It is the responsibility of the agent to call <jvmti/> functions with 
11536     valid parameters and in the proper context (calling thread is attached,
11537     phase is correct, etc.).  
11538     Detecting some error conditions may be difficult, inefficient, or 
11539     impossible for an implementation.
11540     The errors listed in 
11541     <internallink id="reqerrors">Function Specific Required Errors</internallink>
11542     must be detected by the implementation.
11543     All other errors represent the recommended response to the error
11544     condition. 
11545   </intro>
11546 
11547   <errorcategory id="universal-error" label="Universal Errors">
11548     <intro>




11509           </constant>
11510         </constants>
11511       </description>
11512       <origin>new</origin>
11513       <capabilities>
11514       </capabilities>
11515       <parameters>
11516         <param id="format_ptr">
11517           <outptr><enum>jvmtiJlocationFormat</enum></outptr>
11518           <description>
11519             On return, points to the format identifier for <code>jlocation</code> values.
11520           </description>
11521         </param>
11522       </parameters>
11523       <errors>
11524       </errors>
11525     </function>
11526 
11527   </category>
11528 
11529   <category id="heap_monitoring" label="Heap Monitoring">
11530     <typedef id="jvmtiCallFrame" label="Call Frame">
11531       <field id="bci">
11532         <jint/>
11533         <description>BCI for the given allocation.</description>
11534       </field>
11535       <field id="method_id">
11536         <jmethodID/>
11537         <description>Method ID for the given frame.</description>
11538       </field>
11539     </typedef>
11540 
11541     <typedef id="jvmtiStackTrace" label="Stack Trace">
11542       <field id="env_id">
11543         <allocfieldbuf><struct>JNIEnv</struct></allocfieldbuf>
11544         <description>Environment where the trace was recorded.</description>
11545       </field>
11546       <field id="frames">
11547         <allocfieldbuf outcount="trace_count">
11548           <struct>jvmtiCallFrame</struct>
11549         </allocfieldbuf>
11550         <description>Pointer to the call frames.</description>
11551       </field>
11552       <field id="frame_count">
11553         <jint/>
11554         <description>The number of frames for the trace.</description>
11555       </field>
11556       <field id="size">
11557         <jint/>
11558         <description>The size of the object allocation.</description>
11559       </field>
11560       <field id="thread_id">
11561         <jlong/>
11562         <description>The thread id number.</description>
11563       </field>
11564     </typedef>
11565 
11566     <typedef id="jvmtiStackTraces" label="Stack Traces">
11567       <field id="stack_traces">
11568         <allocfieldbuf outcount="trace_count">
11569           <struct>jvmtiStackTrace</struct>
11570         </allocfieldbuf>
11571         <description>
11572           The <datalink id="jvmtiStackTrace"/> array with the various stack traces.
11573         </description>
11574       </field>
11575 
11576       <field id="trace_count">
11577         <jint/>
11578         <description>
11579           Number of traces pointed by the array <datalink id="jvmtiStackTraces"/>.
11580         </description>
11581       </field>
11582     </typedef>
11583 
11584     <function id="StartHeapSampling" phase="any" num="156">
11585       <synopsis>Start Heap Sampling</synopsis>
11586       <description>
11587         Start the heap sampler in the JVM. The function provides, via its argument, the sampling
11588         rate requested and will fill internal data structures with heap allocation samples. The
11589         samples are obtained via the <functionlink id="GetLiveTraces"></functionlink> function.
11590       </description>
11591       <origin>new</origin>
11592       <capabilities>
11593       </capabilities>
11594       <parameters>
11595         <param id="monitoring_rate">
11596           <jint/>
11597           <description>
11598             The monitoring rate used for sampling. The sampler will use a statistical approach to
11599             provide in average sampling every <paramlink id="monitoring_rate"/> allocated bytes.
11600           </description>
11601         </param>
11602         <param id="max_storage">
11603           <jint/>
11604           <description>
11605             The maximum storage used for the sampler. By default, the value is 200.
11606           </description>
11607         </param>
11608       </parameters>
11609       <errors>
11610         <error id="JVMTI_ERROR_ILLEGAL_ARGUMENT">
11611           <paramlink id="monitoring_period"></paramlink> is less than zero.
11612         </error>
11613       </errors>
11614     </function>
11615 
11616     <function id="GetLiveTraces" num="157">
11617       <synopsis>Get Live Traces</synopsis>
11618       <description>
11619         Get Live Heap Sampled traces.  The fields of the <datalink id="jvmtiStackTraces"/>
11620         structure are filled in with details of the specified sampled allocation.
11621       </description>
11622       <origin>new</origin>
11623       <capabilities>
11624       </capabilities>
11625       <parameters>
11626         <param id="stack_traces">
11627           <outptr><struct>jvmtiStackTraces</struct></outptr>
11628           <description>
11629             The stack trace data structure to be filled.
11630           </description>
11631         </param>
11632       </parameters>
11633       <errors>
11634       </errors>
11635     </function>
11636 
11637     <function id="ReleaseTraces" num="158">
11638       <synopsis>Release traces provided by the heap monitoring</synopsis>
11639       <description>
11640         Release traces provided by any of the trace retrieval methods.
11641       </description>
11642       <origin>new</origin>
11643       <capabilities>
11644       </capabilities>
11645       <parameters>
11646         <param id="stack_traces">
11647           <outptr><struct>jvmtiStackTraces</struct></outptr>
11648           <description>
11649             The stack trace data structure to be released.
11650           </description>
11651         </param>
11652       </parameters>
11653       <errors>
11654       </errors>
11655     </function>
11656   </category>
11657 
11658 </functionsection>
11659 
11660 <errorsection label="Error Reference">
11661   <intro>
11662     Every <jvmti/> function returns a <b><code>jvmtiError</code></b> error code.
11663     <p/>
11664     It is the responsibility of the agent to call <jvmti/> functions with 
11665     valid parameters and in the proper context (calling thread is attached,
11666     phase is correct, etc.).  
11667     Detecting some error conditions may be difficult, inefficient, or 
11668     impossible for an implementation.
11669     The errors listed in 
11670     <internallink id="reqerrors">Function Specific Required Errors</internallink>
11671     must be detected by the implementation.
11672     All other errors represent the recommended response to the error
11673     condition. 
11674   </intro>
11675 
11676   <errorcategory id="universal-error" label="Universal Errors">
11677     <intro>


< prev index next >