public interface StackValueRecord extends ValueRecord
stack()
, ustack()
, or
jstack()
action.Modifier and Type | Method and Description |
---|---|
java.util.List<StackFrame> |
asList()
Gets a read-only
List view of this record's stack frames. |
byte[] |
getRawStackData()
Gets the native DTrace representation of this record's stack as
an array of raw bytes.
|
StackFrame[] |
getStackFrames()
Gets a copy of this record's stack frames, or an empty array if
this record's raw stack data was not converted to human-readable
stack frames by DTrace.
|
java.lang.Object |
getValue()
Gets the raw bytes used to represent this record's stack value in
the native DTrace library.
|
StackFrame[] getStackFrames()
printa()
format string is specified without including the %k
placeholder for the stack value represented by this record.
(The stack()
, ustack()
, and jstack()
actions are all usable as members of an aggregation tuple.) See
the
printa()
section of the Output
Formatting chapter of the Dynamic Tracing
Guide for details about printa()
format strings.
Human-readable stack frames are generated by default if printa()
is called without specifying a format string, or when
using Consumer.getAggregate()
as an alternative to printa()
. They are also generated when stack()
, ustack()
, or jstack()
is used as a stand-alone action
outside of an aggregation tuple.
The returned array is a copy and modifying it has no effect on
this record. Elements of the returned array are not null
.
null
byte[] getRawStackData()
Implementations of this interface use raw stack data to compute
equals()
and hashCode()
. If the stack belongs to a user
process, the raw bytes include the process ID.
java.lang.Object getValue()
getValue
in interface ValueRecord
getRawStackData()
java.util.List<StackFrame> asList()
List
view of this record's stack frames.
The returned list implements RandomAccess
. It
is empty if getStackFrames()
returns an empty array.List
view of this record's
stack frames