StackTrace.GetFrames Yöntem

Tanım

Geçerli yığın izlemesindeki tüm yığın çerçevelerinin bir kopyasını döndürür.

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()

Döndürülenler

İşlevi temsil eden bir tür StackFrame dizisi, yığın izlemesinde çağrılar gerçekleştirir.

Öznitelikler

Örnekler

Aşağıdaki kod örneğinde bir StackTraceiçindeki çerçevelerin numaralandırılıyor olduğu gösterilmiştir.

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

Açıklamalar

içindeki işlev çağrılarını listelemek ve incelemek için döndürülen StackFrame diziyi StackTracekullanın. Döndürülen dizinin uzunluğu özellik değerine eşittir FrameCount .

Dizi StackFrame öğeleri ters kronolojik sıradadır. StackFrame at dizi dizini 0, yığın izlemesindeki en son işlev çağrısını ve çağrı yığınına gönderilen son kareyi temsil eder. StackFrame at dizi dizini FrameCount eksi 1, yığın izlemesindeki en eski işlev çağrısını ve çağrı yığınına gönderilen ilk kareyi temsil eder.

GetFrames Bir yığın izlemesindeki tüm yığın çerçevelerini almak için yöntemini kullanın; yığın izlemesinde belirli bir yığın çerçevesini almak için yöntemini kullanınGetFrame. Dizinler StackFrame iki yöntem tarafından aynı şekilde sıralanır. Örneğin, tarafından GetFrames döndürülen dizideki 0 dizinindeki değeri, StackFrame 0 giriş diziniyle döndürülen GetFrame ile eşdeğerdirStackFrame.

Şunlara uygulanır

Ayrıca bkz.