11519 </constants>
11520 </description>
11521 <origin>new</origin>
11522 <capabilities>
11523 </capabilities>
11524 <parameters>
11525 <param id="format_ptr">
11526 <outptr><enum>jvmtiJlocationFormat</enum></outptr>
11527 <description>
11528 On return, points to the format identifier for <code>jlocation</code> values.
11529 </description>
11530 </param>
11531 </parameters>
11532 <errors>
11533 </errors>
11534 </function>
11535
11536 </category>
11537
11538 <category id="heap_monitoring" label="Heap Monitoring">
11539 <typedef id="jvmtiCallFrame" label="Call Frame">
11540 <field id="bci">
11541 <jint/>
11542 <description>BCI for the given allocation.</description>
11543 </field>
11544 <field id="method_id">
11545 <jmethodID/>
11546 <description>Method ID for the given frame.</description>
11547 </field>
11548 </typedef>
11549
11550 <typedef id="jvmtiStackTrace" label="Stack Trace">
11551 <field id="env_id">
11552 <allocfieldbuf><struct>JNIEnv</struct></allocfieldbuf>
11553 <description>Environment where the trace was recorded.</description>
11554 </field>
11555 <field id="frames">
11556 <allocfieldbuf outcount="trace_count">
11557 <struct>jvmtiCallFrame</struct>
11558 </allocfieldbuf>
11559 <description>Pointer to the call frames.</description>
11560 </field>
11561 <field id="frame_count">
11562 <jint/>
11563 <description>The number of frames for the trace.</description>
11564 </field>
11565 <field id="size">
11566 <jint/>
11567 <description>The size of the object allocation.</description>
11568 </field>
11569 <field id="thread_id">
11570 <jlong/>
11571 <description>The thread id number.</description>
11572 </field>
11573 </typedef>
11574
11575 <typedef id="jvmtiStackTraces" label="Stack Traces">
11576 <field id="stack_traces">
11577 <allocfieldbuf outcount="trace_count">
11623 </description>
11624 </field>
11625
11626 <field id="stack_depth_accumulation">
11627 <jlong/>
11628 <description>
11629 Accumulation of stack depths collected by the sampler.
11630 For very long sampling, this number can overflow.
11631 </description>
11632 </field>
11633 </typedef>
11634
11635 <function id="StartHeapSampling" phase="any" num="156">
11636 <synopsis>Start Heap Sampling</synopsis>
11637 <description>
11638 Start the heap sampler in the JVM. The function provides, via its argument, the sampling
11639 rate requested and will fill internal data structures with heap allocation samples. The
11640 samples are obtained via the <functionlink id="GetLiveTraces"></functionlink>,
11641 <functionlink id="GetGarbageTraces"></functionlink>, <functionlink id="GetFrequentGarbageTraces"></functionlink>,
11642 functions.
11643 </description>
11644 <origin>new</origin>
11645 <capabilities>
11646 <required id="can_sample_heap"></required>
11647 </capabilities>
11648 <parameters>
11649 <param id="monitoring_rate">
11650 <jint/>
11651 <description>
11652 The monitoring rate used for sampling. The sampler will use a statistical approach to
11653 provide in average sampling every <paramlink id="monitoring_rate"/> allocated bytes.
11654 </description>
11655 </param>
11656 <param id="max_storage">
11657 <jint/>
11658 <description>
11659 The maximum storage used for the sampler. By default, the value is 200.
11660 </description>
11661 </param>
11662 </parameters>
11663 <errors>
11664 <error id="JVMTI_ERROR_ILLEGAL_ARGUMENT">
11665 <paramlink id="monitoring_period"></paramlink> is less than zero.
11666 </error>
11667 </errors>
11668 </function>
11669
11670 <function id="StopHeapSampling" phase="any" num="157">
11671 <synopsis>Start Heap Sampling</synopsis>
11672 <description>
11673 Stop the heap sampler in the JVM.
11674 Any sample obtained during sampling is still available via the <functionlink id="GetLiveTraces"></functionlink>,
11675 <functionlink id="GetGarbageTraces"></functionlink>, <functionlink id="GetFrequentGarbageTraces"></functionlink>,
11676 functions.
11677 </description>
11678 <origin>new</origin>
11679 <capabilities>
11680 <required id="can_sample_heap"></required>
11681 </capabilities>
11682 <parameters>
11683 </parameters>
11684 <errors>
11685 </errors>
11686 </function>
11687
11688 <function id="GetLiveTraces" num="158">
11689 <synopsis>Get Live Traces</synopsis>
11690 <description>
11691 Get Live Heap Sampled traces. The fields of the <datalink id="jvmtiStackTraces"/>
11692 structure are filled in with details of the specified sampled allocation.
11693 </description>
11694 <origin>new</origin>
11695 <capabilities>
11696 <required id="can_sample_heap"></required>
11697 </capabilities>
11698 <parameters>
11699 <param id="stack_traces">
11700 <outptr><struct>jvmtiStackTraces</struct></outptr>
11701 <description>
11702 The stack trace data structure to be filled.
11703 </description>
11704 </param>
11705 </parameters>
11706 <errors>
11707 </errors>
11708 </function>
11709
11710 <function id="GetGarbageTraces" num="159">
11711 <synopsis>Get Garbage Traces</synopsis>
11712 <description>
11713 Get the recent garbage heap sampled traces. The fields of the <datalink id="jvmtiStackTraces"/>
11714 structure are filled in with details of the specified sampled allocation.
11715 </description>
11716 <origin>new</origin>
11717 <capabilities>
11718 <required id="can_sample_heap"></required>
11719 </capabilities>
11720 <parameters>
11721 <param id="stack_traces">
11722 <outptr><struct>jvmtiStackTraces</struct></outptr>
11723 <description>
11724 The stack trace data structure to be filled.
11725 </description>
11726 </param>
11727 </parameters>
11728 <errors>
11729 </errors>
11730 </function>
11731
11732 <function id="GetFrequentGarbageTraces" num="160">
11733 <synopsis>Get Frequent Garbage Traces</synopsis>
11734 <description>
11735 Get the frequent garbage heap sampled traces. The fields of the <datalink id="jvmtiStackTraces"/>
11736 structure are filled in with details of the specified sampled allocation.
11737 </description>
11738 <origin>new</origin>
11739 <capabilities>
11740 <required id="can_sample_heap"></required>
11741 </capabilities>
11742 <parameters>
11743 <param id="stack_traces">
11744 <outptr><struct>jvmtiStackTraces</struct></outptr>
11745 <description>
11746 The stack trace data structure to be filled.
11747 </description>
11748 </param>
11749 </parameters>
11750 <errors>
11751 </errors>
11752 </function>
11753
11754 <function id="ReleaseTraces" num="161">
11755 <synopsis>Release traces provided by the heap monitoring</synopsis>
11756 <description>
11760 <capabilities>
11761 <required id="can_sample_heap"></required>
11762 </capabilities>
11763 <parameters>
11764 <param id="stack_traces">
11765 <outptr><struct>jvmtiStackTraces</struct></outptr>
11766 <description>
11767 The stack trace data structure to be released.
11768 </description>
11769 </param>
11770 </parameters>
11771 <errors>
11772 </errors>
11773 </function>
11774
11775 <function id="GetHeapSamplingStats" num="162">
11776 <synopsis>Get the heap sampling statistics</synopsis>
11777 <description>
11778 Returns a <datalink id="jvmtiHeapSamplingStats"/> to understand the heap sampling behavior and current
11779 internal data storage status.
11780 </description>
11781 <origin>new</origin>
11782 <capabilities>
11783 <required id="can_sample_heap"></required>
11784 </capabilities>
11785 <parameters>
11786 <param id="stats">
11787 <outptr><struct>jvmtiHeapSamplingStats</struct></outptr>
11788 <description>
11789 The structure to be filled with the heap sampler's statistics.
11790 </description>
11791 </param>
11792 </parameters>
11793 <errors>
11794 </errors>
11795 </function>
11796 </category>
11797
11798 </functionsection>
11799
|
11519 </constants>
11520 </description>
11521 <origin>new</origin>
11522 <capabilities>
11523 </capabilities>
11524 <parameters>
11525 <param id="format_ptr">
11526 <outptr><enum>jvmtiJlocationFormat</enum></outptr>
11527 <description>
11528 On return, points to the format identifier for <code>jlocation</code> values.
11529 </description>
11530 </param>
11531 </parameters>
11532 <errors>
11533 </errors>
11534 </function>
11535
11536 </category>
11537
11538 <category id="heap_monitoring" label="Heap Monitoring">
11539 <typedef id="jvmtiStackTrace" label="Stack Trace">
11540 <field id="frames">
11541 <allocfieldbuf outcount="trace_count">
11542 <struct>jvmtiFrameInfo</struct>
11543 </allocfieldbuf>
11544 <description>Pointer to the call frames.</description>
11545 </field>
11546 <field id="frame_count">
11547 <jint/>
11548 <description>The number of frames for the trace.</description>
11549 </field>
11550 <field id="size">
11551 <jint/>
11552 <description>The size of the object allocation.</description>
11553 </field>
11554 <field id="thread_id">
11555 <jlong/>
11556 <description>The thread id number.</description>
11557 </field>
11558 </typedef>
11559
11560 <typedef id="jvmtiStackTraces" label="Stack Traces">
11561 <field id="stack_traces">
11562 <allocfieldbuf outcount="trace_count">
11608 </description>
11609 </field>
11610
11611 <field id="stack_depth_accumulation">
11612 <jlong/>
11613 <description>
11614 Accumulation of stack depths collected by the sampler.
11615 For very long sampling, this number can overflow.
11616 </description>
11617 </field>
11618 </typedef>
11619
11620 <function id="StartHeapSampling" phase="any" num="156">
11621 <synopsis>Start Heap Sampling</synopsis>
11622 <description>
11623 Start the heap sampler in the JVM. The function provides, via its argument, the sampling
11624 rate requested and will fill internal data structures with heap allocation samples. The
11625 samples are obtained via the <functionlink id="GetLiveTraces"></functionlink>,
11626 <functionlink id="GetGarbageTraces"></functionlink>, <functionlink id="GetFrequentGarbageTraces"></functionlink>,
11627 functions.
11628
11629 Starting the heap sampler resets internal traces and counters. Therefore stopping the sampler
11630 puts internal trace samples and counters on pause for post-processing.
11631 </description>
11632 <origin>new</origin>
11633 <capabilities>
11634 <required id="can_sample_heap"></required>
11635 </capabilities>
11636 <parameters>
11637 <param id="monitoring_rate">
11638 <jint/>
11639 <description>
11640 The monitoring rate used for sampling. The sampler will use a statistical approach to
11641 provide in average sampling every <paramlink id="monitoring_rate"/> allocated bytes.
11642 </description>
11643 </param>
11644 <param id="max_storage">
11645 <jint/>
11646 <description>
11647 The maximum storage used for the sampler. By default, the value is 200.
11648 </description>
11649 </param>
11650 </parameters>
11651 <errors>
11652 <error id="JVMTI_ERROR_ILLEGAL_ARGUMENT">
11653 <paramlink id="monitoring_period"></paramlink> is less than zero.
11654 </error>
11655 </errors>
11656 </function>
11657
11658 <function id="StopHeapSampling" phase="any" num="157">
11659 <synopsis>Stop Heap Sampling</synopsis>
11660 <description>
11661 Stop the heap sampler in the JVM.
11662 Any sample obtained during sampling is still available via the <functionlink id="GetLiveTraces"></functionlink>,
11663 <functionlink id="GetGarbageTraces"></functionlink>, <functionlink id="GetFrequentGarbageTraces"></functionlink>,
11664 functions.
11665
11666 Starting the heap sampler resets internal traces and counters. Therefore stopping the sampler
11667 puts internal trace samples and counters on pause for post-processing.
11668 </description>
11669 <origin>new</origin>
11670 <capabilities>
11671 <required id="can_sample_heap"></required>
11672 </capabilities>
11673 <parameters>
11674 </parameters>
11675 <errors>
11676 </errors>
11677 </function>
11678
11679 <function id="GetLiveTraces" num="158">
11680 <synopsis>Get Live Traces</synopsis>
11681 <description>
11682 Get Live Heap Sampled traces. The fields of the <datalink id="jvmtiStackTraces"/>
11683 structure are filled in with details of the specified sampled allocation.
11684
11685 This method can be called at any time but if the sampler has not been started via at least
11686 one call to <functionlink id="StartHeapSampling"></functionlink> it returns no traces.
11687 </description>
11688 <origin>new</origin>
11689 <capabilities>
11690 <required id="can_sample_heap"></required>
11691 </capabilities>
11692 <parameters>
11693 <param id="stack_traces">
11694 <outptr><struct>jvmtiStackTraces</struct></outptr>
11695 <description>
11696 The stack trace data structure to be filled.
11697 </description>
11698 </param>
11699 </parameters>
11700 <errors>
11701 </errors>
11702 </function>
11703
11704 <function id="GetGarbageTraces" num="159">
11705 <synopsis>Get Garbage Traces</synopsis>
11706 <description>
11707 Get the recent garbage heap sampled traces. The fields of the <datalink id="jvmtiStackTraces"/>
11708 structure are filled in with details of the specified sampled allocation.
11709
11710 This method can be called at any time but if the sampler has not been started via at least
11711 one call to <functionlink id="StartHeapSampling"></functionlink> it returns no traces.
11712 </description>
11713 <origin>new</origin>
11714 <capabilities>
11715 <required id="can_sample_heap"></required>
11716 </capabilities>
11717 <parameters>
11718 <param id="stack_traces">
11719 <outptr><struct>jvmtiStackTraces</struct></outptr>
11720 <description>
11721 The stack trace data structure to be filled.
11722 </description>
11723 </param>
11724 </parameters>
11725 <errors>
11726 </errors>
11727 </function>
11728
11729 <function id="GetFrequentGarbageTraces" num="160">
11730 <synopsis>Get Frequent Garbage Traces</synopsis>
11731 <description>
11732 Get the frequent garbage heap sampled traces. The fields of the <datalink id="jvmtiStackTraces"/>
11733 structure are filled in with details of the specified sampled allocation.
11734
11735 This method can be called at any time but if the sampler has not been started via at least
11736 one call to <functionlink id="StartHeapSampling"></functionlink> it returns no traces.
11737 </description>
11738 <origin>new</origin>
11739 <capabilities>
11740 <required id="can_sample_heap"></required>
11741 </capabilities>
11742 <parameters>
11743 <param id="stack_traces">
11744 <outptr><struct>jvmtiStackTraces</struct></outptr>
11745 <description>
11746 The stack trace data structure to be filled.
11747 </description>
11748 </param>
11749 </parameters>
11750 <errors>
11751 </errors>
11752 </function>
11753
11754 <function id="ReleaseTraces" num="161">
11755 <synopsis>Release traces provided by the heap monitoring</synopsis>
11756 <description>
11760 <capabilities>
11761 <required id="can_sample_heap"></required>
11762 </capabilities>
11763 <parameters>
11764 <param id="stack_traces">
11765 <outptr><struct>jvmtiStackTraces</struct></outptr>
11766 <description>
11767 The stack trace data structure to be released.
11768 </description>
11769 </param>
11770 </parameters>
11771 <errors>
11772 </errors>
11773 </function>
11774
11775 <function id="GetHeapSamplingStats" num="162">
11776 <synopsis>Get the heap sampling statistics</synopsis>
11777 <description>
11778 Returns a <datalink id="jvmtiHeapSamplingStats"/> to understand the heap sampling behavior and current
11779 internal data storage status.
11780
11781 This method can be called at any time but if the sampler has not been started via at least
11782 one call to <functionlink id="StartHeapSampling"></functionlink> it returns a zeroed-out structure.
11783 </description>
11784 <origin>new</origin>
11785 <capabilities>
11786 <required id="can_sample_heap"></required>
11787 </capabilities>
11788 <parameters>
11789 <param id="stats">
11790 <outptr><struct>jvmtiHeapSamplingStats</struct></outptr>
11791 <description>
11792 The structure to be filled with the heap sampler's statistics.
11793 </description>
11794 </param>
11795 </parameters>
11796 <errors>
11797 </errors>
11798 </function>
11799 </category>
11800
11801 </functionsection>
11802
|