Condividi tramite


StackTrace.GetFrames Metodo

Definizione

Restituisce una copia di tutti gli stack frame nella traccia corrente dello stack.

public:
 cli::array <System::Diagnostics::StackFrame ^> ^ GetFrames();
public:
 virtual cli::array <System::Diagnostics::StackFrame ^> ^ GetFrames();
public System.Diagnostics.StackFrame[] GetFrames ();
public virtual System.Diagnostics.StackFrame[] GetFrames ();
public virtual System.Diagnostics.StackFrame?[] GetFrames ();
[System.Runtime.InteropServices.ComVisible(false)]
public virtual System.Diagnostics.StackFrame[] GetFrames ();
member this.GetFrames : unit -> System.Diagnostics.StackFrame[]
abstract member GetFrames : unit -> System.Diagnostics.StackFrame[]
override this.GetFrames : unit -> System.Diagnostics.StackFrame[]
[<System.Runtime.InteropServices.ComVisible(false)>]
abstract member GetFrames : unit -> System.Diagnostics.StackFrame[]
override this.GetFrames : unit -> System.Diagnostics.StackFrame[]
Public Function GetFrames () As StackFrame()
Public Overridable Function GetFrames () As StackFrame()

Restituisce

Matrice di tipo StackFrame che rappresenta le chiamate di funzioni nella traccia dello stack.

Attributi

Esempio

Nell'esempio di codice seguente viene illustrata l'enumerazione dei frame in un StackTraceoggetto .

StackTrace^ st = gcnew StackTrace( 1,true );
array<StackFrame^>^stFrames = st->GetFrames();
for ( int i; i < stFrames->Length; i++ )
{
   StackFrame^ sf = stFrames[ i ];
   Console::WriteLine( "Method: {0}", sf->GetMethod() );

}
StackTrace st = new StackTrace(1, true);
StackFrame [] stFrames = st.GetFrames();

foreach(StackFrame sf in stFrames )
{
   Console.WriteLine("Method: {0}", sf.GetMethod() );
}
Dim strace As New StackTrace(1, True)
Dim stFrames As StackFrame() = strace.GetFrames()

Dim sf As StackFrame
For Each sf In  stFrames
   Console.WriteLine("Method: {0}", sf.GetMethod())
Next sf

Commenti

Usare la matrice restituita StackFrame per enumerare ed esaminare le chiamate di funzione nell'oggetto StackTrace. La lunghezza della matrice restituita è uguale al valore della FrameCount proprietà.

Gli elementi della StackFrame matrice sono in ordine cronologico inverso. L'indice StackFrame della matrice 0 rappresenta la chiamata di funzione più recente nella traccia dello stack e l'ultimo frame eseguito nel stack di chiamate. L'indice StackFrameFrameCount di matrice meno 1 rappresenta la chiamata di funzione meno recente nella traccia dello stack e il primo frame eseguito il push nello stack di chiamate.

Usare il metodo per ottenere tutti i frame dello stack in una traccia dello stack. Usare il GetFramesGetFrame metodo per ottenere un frame di stack specifico in una traccia dello stack. Gli StackFrame indici vengono ordinati allo stesso modo dai due metodi. Ad esempio, l'indice in corrispondenza dell'indice StackFrame 0 nella matrice restituito da GetFrames è equivalente al restituito da GetFrame con un indice di input pari a StackFrame 0.

Si applica a

Vedi anche