StackTrace StackTrace StackTrace StackTrace Constructors

Definition

Überlädt

StackTrace() StackTrace() StackTrace()

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers.Initializes a new instance of the StackTrace class from the caller's frame.

StackTrace(Boolean) StackTrace(Boolean) StackTrace(Boolean) StackTrace(Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers und zeichnet bei Bedarf Quellinformationen auf.Initializes a new instance of the StackTrace class from the caller's frame, optionally capturing source information.

StackTrace(StackFrame) StackTrace(StackFrame) StackTrace(StackFrame) StackTrace(StackFrame)

Initialisiert eine neue Instanz der StackTrace-Klasse, die einen einzelnen Rahmen enthält.Initializes a new instance of the StackTrace class that contains a single frame.

StackTrace(Exception) StackTrace(Exception) StackTrace(Exception) StackTrace(Exception)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts.Initializes a new instance of the StackTrace class using the provided exception object.

StackTrace(Int32) StackTrace(Int32) StackTrace(Int32) StackTrace(Int32)

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers, wobei die angegebene Anzahl von Rahmen übersprungen wird.Initializes a new instance of the StackTrace class from the caller's frame, skipping the specified number of frames.

StackTrace(Exception, Int32) StackTrace(Exception, Int32) StackTrace(Exception, Int32) StackTrace(Exception, Int32)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts, wobei die angegebene Anzahl von Rahmen übersprungen wird.Initializes a new instance of the StackTrace class using the provided exception object and skipping the specified number of frames.

StackTrace(Int32, Boolean) StackTrace(Int32, Boolean) StackTrace(Int32, Boolean) StackTrace(Int32, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers. Dabei wird die angegebene Anzahl von Rahmen übersprungen, und Quellinformationen können wahlweise aufgezeichnet werden.Initializes a new instance of the StackTrace class from the caller's frame, skipping the specified number of frames and optionally capturing source information.

StackTrace(Thread, Boolean) StackTrace(Thread, Boolean) StackTrace(Thread, Boolean) StackTrace(Thread, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse für einen bestimmten Thread und zeichnet optional Quellinformationen auf.Initializes a new instance of the StackTrace class for a specific thread, optionally capturing source information.

Verwenden Sie diese Konstruktorüberladung nicht.Do not use this constructor overload.

StackTrace(Exception, Int32, Boolean) StackTrace(Exception, Int32, Boolean) StackTrace(Exception, Int32, Boolean) StackTrace(Exception, Int32, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts. Dabei wird die angegebene Anzahl von Rahmen übersprungen, und Quellinformationen können wahlweise aufgezeichnet werden.Initializes a new instance of the StackTrace class using the provided exception object, skipping the specified number of frames and optionally capturing source information.

StackTrace(Exception, Boolean) StackTrace(Exception, Boolean) StackTrace(Exception, Boolean) StackTrace(Exception, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts und zeichnet optional Quellinformationen auf.Initializes a new instance of the StackTrace class, using the provided exception object and optionally capturing source information.

StackTrace() StackTrace() StackTrace()

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers.Initializes a new instance of the StackTrace class from the caller's frame.

public:
 StackTrace();
public StackTrace ();
Public Sub New ()

Beispiele

Das folgende Codebeispiel zeigt die vor- und Nachnamen Funktionsaufrufe in eine stapelüberwachung.The following code example displays the first and last function calls in a stack trace.

void Level5Method()
{
   try
   {
      ClassLevel6^ nestedClass = gcnew ClassLevel6;
      nestedClass->Level6Method();
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( " Level5Method exception handler" );
      StackTrace^ st = gcnew StackTrace;
      
      // Display the most recent function call.
      StackFrame^ sf = st->GetFrame( 0 );
      Console::WriteLine();
      Console::WriteLine( "  Exception in method: " );
      Console::WriteLine( "      {0}", sf->GetMethod() );
      if ( st->FrameCount > 1 )
      {
         
         // Display the highest-level function call
         // in the trace.
         sf = st->GetFrame( st->FrameCount - 1 );
         Console::WriteLine( "  Original function call at top of call stack):" );
         Console::WriteLine( "      {0}", sf->GetMethod() );
      }
      Console::WriteLine();
      Console::WriteLine( "   ... throwing exception to next level ..." );
      Console::WriteLine( "-------------------------------------------------\n" );
      throw e;
   }

}

public void Level5Method()
{
   try 
   {
      ClassLevel6 nestedClass = new ClassLevel6();
      nestedClass.Level6Method();
   }
   catch (Exception e) 
   {
      Console.WriteLine(" Level5Method exception handler");

      StackTrace st = new StackTrace();
      
      // Display the most recent function call.
      StackFrame sf = st.GetFrame(0);
      Console.WriteLine();
      Console.WriteLine("  Exception in method: ");
      Console.WriteLine("      {0}", sf.GetMethod());

      if (st.FrameCount >1)
      {
         // Display the highest-level function call 
         // in the trace.
         sf = st.GetFrame(st.FrameCount-1);
         Console.WriteLine("  Original function call at top of call stack):");
         Console.WriteLine("      {0}", sf.GetMethod());
      }

      Console.WriteLine();
      Console.WriteLine("   ... throwing exception to next level ...");
      Console.WriteLine("-------------------------------------------------\n");
      throw e;
   }        
}
Public Sub Level5Method()
   Try
      Dim nestedClass As New ClassLevel6()
      nestedClass.Level6Method()
   Catch e As Exception
      Console.WriteLine(" Level5Method exception handler")
      
      Dim st As New StackTrace()
      
      ' Display the most recent function call.
      Dim sf As StackFrame = st.GetFrame(0)
      Console.WriteLine()
      Console.WriteLine("  Exception in method: ")
      Console.WriteLine("      {0}", sf.GetMethod())
      
      If st.FrameCount > 1 Then
         ' Display the highest-level function call in the trace.
         sf = st.GetFrame((st.FrameCount - 1))
         Console.WriteLine("  Original function call at top of call stack):")
         Console.WriteLine("      {0}", sf.GetMethod())
      End If
      
      Console.WriteLine()
      Console.WriteLine("   ... throwing exception to next level ...")
      Console.WriteLine("-------------------------------------------------")
      Console.WriteLine()
      Throw e
   End Try
End Sub 'Level5Method

Hinweise

Die StackTrace wird mit dem aktuellen Thread des Aufrufers erstellt und enthält keine Dateiname, Zeilennummer und Spalteninformationen.The StackTrace is created with the caller's current thread, and does not contain file name, line number, or column information.

Verwenden Sie diesen Standardkonstruktor, wenn Sie eine vollständige Ablaufverfolgung mit nur zusammenfassende Informationen zur Aufrufliste möchten.Use this default constructor when you want a complete trace with only summary method information about the call stack.

StackTrace(Boolean) StackTrace(Boolean) StackTrace(Boolean) StackTrace(Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers und zeichnet bei Bedarf Quellinformationen auf.Initializes a new instance of the StackTrace class from the caller's frame, optionally capturing source information.

public:
 StackTrace(bool fNeedFileInfo);
public StackTrace (bool fNeedFileInfo);
new System.Diagnostics.StackTrace : bool -> System.Diagnostics.StackTrace
Public Sub New (fNeedFileInfo As Boolean)

Parameter

fNeedFileInfo
Boolean Boolean Boolean Boolean

true, wenn Dateiname, Zeilennummer und Spaltennummer aufgezeichnet werden sollen, andernfalls false.true to capture the file name, line number, and column number; otherwise, false.

Beispiele

Das folgende Codebeispiel veranschaulicht verschiedene StackTrace -Konstruktormethoden.The following code example demonstrates various StackTrace constructor methods.

void Level2Method()
{
   try
   {
      ClassLevel3^ nestedClass = gcnew ClassLevel3;
      nestedClass->Level3Method();
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( " Level2Method exception handler" );
      
      // Display the full call stack at this level.
      StackTrace^ st1 = gcnew StackTrace( true );
      Console::WriteLine( " Stack trace for this level: {0}", st1->ToString() );
      
      // Build a stack trace from one frame, skipping the
      // current frame and using the next frame.
      StackTrace^ st2 = gcnew StackTrace( gcnew StackFrame( 1,true ) );
      Console::WriteLine( " Stack trace built with next level frame: {0}", st2->ToString() );
      
      // Build a stack trace skipping the current frame, and
      // including all the other frames.
      StackTrace^ st3 = gcnew StackTrace( 1,true );
      Console::WriteLine( " Stack trace built from the next level up: {0}", st3->ToString() );
      Console::WriteLine();
      Console::WriteLine( "   ... throwing exception to next level ..." );
      Console::WriteLine( "-------------------------------------------------\n" );
      throw e;
   }

}

public void Level2Method()
{
   try 
   {
      ClassLevel3 nestedClass = new ClassLevel3();
      nestedClass.Level3Method();

   }
   catch (Exception e) 
   {
      Console.WriteLine(" Level2Method exception handler");

      // Display the full call stack at this level.
      StackTrace st1 = new StackTrace(true);
      Console.WriteLine(" Stack trace for this level: {0}",
         st1.ToString());

      // Build a stack trace from one frame, skipping the current
      // frame and using the next frame.
      StackTrace st2 = new StackTrace(new StackFrame(1, true));
      Console.WriteLine(" Stack trace built with next level frame: {0}",
         st2.ToString());

      // Build a stack trace skipping the current frame, and
      // including all the other frames.
      StackTrace st3 = new StackTrace(1, true);
      Console.WriteLine(" Stack trace built from the next level up: {0}",
         st3.ToString());

      Console.WriteLine();
      Console.WriteLine("   ... throwing exception to next level ...");
      Console.WriteLine("-------------------------------------------------\n");
      throw e;
   }
}
Public Sub Level2Method()
   Try
      Dim nestedClass As New ClassLevel3
      nestedClass.Level3Method()
   
   Catch e As Exception
      Console.WriteLine(" Level2Method exception handler")
      
      ' Display the full call stack at this level.
      Dim st1 As New StackTrace(True)
      Console.WriteLine(" Stack trace for this level: {0}", _
         st1.ToString())
      
      ' Build a stack trace from one frame, skipping the current
      ' frame and using the next frame.
      Dim st2 As New StackTrace(New StackFrame(1, True))
      Console.WriteLine(" Stack trace built with next level frame: {0}", _
          st2.ToString())
      
      ' Build a stack trace skipping the current frame, and
      ' including all the other frames.
      Dim st3 As New StackTrace(1, True)
      Console.WriteLine(" Stack trace built from the next level up: {0}", _
          st3.ToString())
      
      Console.WriteLine()
      Console.WriteLine("   ... throwing exception to next level ...")
      Console.WriteLine("-------------------------------------------------")
      Console.WriteLine()
      Throw e
   End Try
End Sub 'Level2Method

Hinweise

Die StackTrace wird mit dem aktuellen Thread des Aufrufers erstellt.The StackTrace is created with the caller's current thread.

StackTrace(StackFrame) StackTrace(StackFrame) StackTrace(StackFrame) StackTrace(StackFrame)

Initialisiert eine neue Instanz der StackTrace-Klasse, die einen einzelnen Rahmen enthält.Initializes a new instance of the StackTrace class that contains a single frame.

public:
 StackTrace(System::Diagnostics::StackFrame ^ frame);
public StackTrace (System.Diagnostics.StackFrame frame);
new System.Diagnostics.StackTrace : System.Diagnostics.StackFrame -> System.Diagnostics.StackTrace
Public Sub New (frame As StackFrame)

Parameter

frame
StackFrame StackFrame StackFrame StackFrame

Der Rahmen, den das StackTrace-Objekt enthalten soll.The frame that the StackTrace object should contain.

Beispiele

Der folgende Code Beispiel schreibt Stapelüberwachungsinformationen auf einen Eintrag im Ereignisprotokoll.The following code example writes stack trace information to an event log entry.

StackFrame^ fr = gcnew StackFrame( 1,true );
StackTrace^ st = gcnew StackTrace( fr );
EventLog::WriteEntry( fr->GetMethod()->Name, st->ToString(), EventLogEntryType::Warning );
StackFrame fr = new StackFrame(1,true);
StackTrace st = new StackTrace(fr);
EventLog.WriteEntry(fr.GetMethod().Name,
                    st.ToString(),
                    EventLogEntryType.Warning);
Dim frame As New StackFrame(1, True)
Dim strace As New StackTrace(frame)            

EventLog.WriteEntry(frame.GetMethod().Name, _
                    strace.ToString(), _
                    EventLogEntryType.Warning)

Hinweise

Verwenden Sie diesen Konstruktor, wenn Sie nicht, dass den Mehraufwand für eine vollständige stapelüberwachung möchten.Use this constructor when you do not want the overhead of a full stack trace.

Siehe auch

StackTrace(Exception) StackTrace(Exception) StackTrace(Exception) StackTrace(Exception)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts.Initializes a new instance of the StackTrace class using the provided exception object.

public:
 StackTrace(Exception ^ e);
public StackTrace (Exception e);
new System.Diagnostics.StackTrace : Exception -> System.Diagnostics.StackTrace
Public Sub New (e As Exception)

Parameter

e
Exception Exception Exception Exception

Das Ausnahmeobjekt, von dem aus die Stapelüberwachung erstellt werden soll.The exception object from which to construct the stack trace.

Ausnahmen

Hinweise

Die StackTrace wird mit dem aktuellen Thread des Aufrufers erstellt und enthält keine Dateiname, Zeilennummer und Spalteninformationen.The StackTrace is created with the caller's current thread, and does not contain file name, line number, or column information.

Die resultierende stapelüberwachung werden im Stapel zum Zeitpunkt der Ausnahme beschreibt.The resulting stack trace describes the stack at the time of the exception.

Siehe auch

StackTrace(Int32) StackTrace(Int32) StackTrace(Int32) StackTrace(Int32)

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers, wobei die angegebene Anzahl von Rahmen übersprungen wird.Initializes a new instance of the StackTrace class from the caller's frame, skipping the specified number of frames.

public:
 StackTrace(int skipFrames);
public StackTrace (int skipFrames);
new System.Diagnostics.StackTrace : int -> System.Diagnostics.StackTrace
Public Sub New (skipFrames As Integer)

Parameter

skipFrames
Int32 Int32 Int32 Int32

Die Anzahl der Stapelrahmen, ab der die Überwachung begonnen werden soll.The number of frames up the stack from which to start the trace.

Ausnahmen

Der skipFrames-Parameter ist negativ.The skipFrames parameter is negative.

Hinweise

Die StackTrace wird mit dem aktuellen Thread des Aufrufers erstellt und enthält keine Dateiname, Zeilennummer und Spalteninformationen.The StackTrace is created with the caller's current thread, and does not contain file name, line number, or column information.

Wenn die Anzahl der zu überspringenden Frames größer als ist oder gleich der Gesamtzahl der Frames in der Aufrufliste, die zum Zeitpunkt die Instanz erstellt wird, die StackTrace enthält keine Frames.If the number of frames to skip is greater than or equal to the total number of frames on the call stack at the time the instance is created, the StackTrace will contain no frames.

StackTrace(Exception, Int32) StackTrace(Exception, Int32) StackTrace(Exception, Int32) StackTrace(Exception, Int32)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts, wobei die angegebene Anzahl von Rahmen übersprungen wird.Initializes a new instance of the StackTrace class using the provided exception object and skipping the specified number of frames.

public:
 StackTrace(Exception ^ e, int skipFrames);
public StackTrace (Exception e, int skipFrames);
new System.Diagnostics.StackTrace : Exception * int -> System.Diagnostics.StackTrace
Public Sub New (e As Exception, skipFrames As Integer)

Parameter

e
Exception Exception Exception Exception

Das Ausnahmeobjekt, von dem aus die Stapelüberwachung erstellt werden soll.The exception object from which to construct the stack trace.

skipFrames
Int32 Int32 Int32 Int32

Die Anzahl der Stapelrahmen, ab der die Überwachung begonnen werden soll.The number of frames up the stack from which to start the trace.

Ausnahmen

Der skipFrames-Parameter ist negativ.The skipFrames parameter is negative.

Hinweise

Die StackTrace enthält keine Dateiname, Zeilennummer und Spalteninformationen.The StackTrace does not contain file name, line number, or column information.

Die resultierende stapelüberwachung werden im Stapel zum Zeitpunkt der Ausnahme beschreibt.The resulting stack trace describes the stack at the time of the exception.

Wenn die Anzahl der zu überspringenden Frames größer als ist oder gleich der Gesamtzahl der Frames in der Aufrufliste, die zum Zeitpunkt die Instanz erstellt wird, die StackTrace enthält keine Frames.If the number of frames to skip is greater than or equal to the total number of frames on the call stack at the time the instance is created, the StackTrace will contain no frames.

Siehe auch

StackTrace(Int32, Boolean) StackTrace(Int32, Boolean) StackTrace(Int32, Boolean) StackTrace(Int32, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse aus dem Rahmen des Aufrufers. Dabei wird die angegebene Anzahl von Rahmen übersprungen, und Quellinformationen können wahlweise aufgezeichnet werden.Initializes a new instance of the StackTrace class from the caller's frame, skipping the specified number of frames and optionally capturing source information.

public:
 StackTrace(int skipFrames, bool fNeedFileInfo);
public StackTrace (int skipFrames, bool fNeedFileInfo);
new System.Diagnostics.StackTrace : int * bool -> System.Diagnostics.StackTrace
Public Sub New (skipFrames As Integer, fNeedFileInfo As Boolean)

Parameter

skipFrames
Int32 Int32 Int32 Int32

Die Anzahl der Stapelrahmen, ab der die Überwachung begonnen werden soll.The number of frames up the stack from which to start the trace.

fNeedFileInfo
Boolean Boolean Boolean Boolean

true, wenn Dateiname, Zeilennummer und Spaltennummer aufgezeichnet werden sollen, andernfalls false.true to capture the file name, line number, and column number; otherwise, false.

Ausnahmen

Der skipFrames-Parameter ist negativ.The skipFrames parameter is negative.

Beispiele

Das folgende Codebeispiel veranschaulicht verschiedene StackTrace -Konstruktormethoden.The following code example demonstrates various StackTrace constructor methods.

void Level2Method()
{
   try
   {
      ClassLevel3^ nestedClass = gcnew ClassLevel3;
      nestedClass->Level3Method();
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( " Level2Method exception handler" );
      
      // Display the full call stack at this level.
      StackTrace^ st1 = gcnew StackTrace( true );
      Console::WriteLine( " Stack trace for this level: {0}", st1->ToString() );
      
      // Build a stack trace from one frame, skipping the
      // current frame and using the next frame.
      StackTrace^ st2 = gcnew StackTrace( gcnew StackFrame( 1,true ) );
      Console::WriteLine( " Stack trace built with next level frame: {0}", st2->ToString() );
      
      // Build a stack trace skipping the current frame, and
      // including all the other frames.
      StackTrace^ st3 = gcnew StackTrace( 1,true );
      Console::WriteLine( " Stack trace built from the next level up: {0}", st3->ToString() );
      Console::WriteLine();
      Console::WriteLine( "   ... throwing exception to next level ..." );
      Console::WriteLine( "-------------------------------------------------\n" );
      throw e;
   }

}

public void Level2Method()
{
   try 
   {
      ClassLevel3 nestedClass = new ClassLevel3();
      nestedClass.Level3Method();

   }
   catch (Exception e) 
   {
      Console.WriteLine(" Level2Method exception handler");

      // Display the full call stack at this level.
      StackTrace st1 = new StackTrace(true);
      Console.WriteLine(" Stack trace for this level: {0}",
         st1.ToString());

      // Build a stack trace from one frame, skipping the current
      // frame and using the next frame.
      StackTrace st2 = new StackTrace(new StackFrame(1, true));
      Console.WriteLine(" Stack trace built with next level frame: {0}",
         st2.ToString());

      // Build a stack trace skipping the current frame, and
      // including all the other frames.
      StackTrace st3 = new StackTrace(1, true);
      Console.WriteLine(" Stack trace built from the next level up: {0}",
         st3.ToString());

      Console.WriteLine();
      Console.WriteLine("   ... throwing exception to next level ...");
      Console.WriteLine("-------------------------------------------------\n");
      throw e;
   }
}
Public Sub Level2Method()
   Try
      Dim nestedClass As New ClassLevel3
      nestedClass.Level3Method()
   
   Catch e As Exception
      Console.WriteLine(" Level2Method exception handler")
      
      ' Display the full call stack at this level.
      Dim st1 As New StackTrace(True)
      Console.WriteLine(" Stack trace for this level: {0}", _
         st1.ToString())
      
      ' Build a stack trace from one frame, skipping the current
      ' frame and using the next frame.
      Dim st2 As New StackTrace(New StackFrame(1, True))
      Console.WriteLine(" Stack trace built with next level frame: {0}", _
          st2.ToString())
      
      ' Build a stack trace skipping the current frame, and
      ' including all the other frames.
      Dim st3 As New StackTrace(1, True)
      Console.WriteLine(" Stack trace built from the next level up: {0}", _
          st3.ToString())
      
      Console.WriteLine()
      Console.WriteLine("   ... throwing exception to next level ...")
      Console.WriteLine("-------------------------------------------------")
      Console.WriteLine()
      Throw e
   End Try
End Sub 'Level2Method

Hinweise

Wenn die Anzahl der zu überspringenden Frames größer als ist oder gleich der Gesamtzahl der Frames in der Aufrufliste, die zum Zeitpunkt die Instanz erstellt wird, die StackTrace enthält keine Frames.If the number of frames to skip is greater than or equal to the total number of frames on the call stack at the time the instance is created, the StackTrace will contain no frames.

StackTrace(Thread, Boolean) StackTrace(Thread, Boolean) StackTrace(Thread, Boolean) StackTrace(Thread, Boolean)

Warnung

Diese API ist jetzt veraltet.

Initialisiert eine neue Instanz der StackTrace-Klasse für einen bestimmten Thread und zeichnet optional Quellinformationen auf.Initializes a new instance of the StackTrace class for a specific thread, optionally capturing source information.

Verwenden Sie diese Konstruktorüberladung nicht.Do not use this constructor overload.

public:
 StackTrace(System::Threading::Thread ^ targetThread, bool needFileInfo);
[System.Obsolete]
[System.Obsolete("This constructor has been deprecated.  Please use a constructor that does not require a Thread parameter.  http://go.microsoft.com/fwlink/?linkid=14202")]
public StackTrace (System.Threading.Thread targetThread, bool needFileInfo);
new System.Diagnostics.StackTrace : System.Threading.Thread * bool -> System.Diagnostics.StackTrace
Public Sub New (targetThread As Thread, needFileInfo As Boolean)

Parameter

targetThread
Thread Thread Thread Thread

Der Thread, dessen Stapelüberwachung angefordert wird.The thread whose stack trace is requested.

needFileInfo
Boolean Boolean Boolean Boolean

true, wenn Dateiname, Zeilennummer und Spaltennummer aufgezeichnet werden sollen, andernfalls false.true to capture the file name, line number, and column number; otherwise, false.

Ausnahmen

Der Thread targetThread ist nicht unterbrochen.The thread targetThread is not suspended.

Hinweise

Wichtig

Verwenden Sie diesen Konstruktor nicht.Do not use this constructor. Es ist veraltet, und es ist keine empfohlene Alternative.It is obsolete, and there is no recommended alternative. Wenn Sie einen Thread anhalten, können Sie nicht wissen, welchen Code es ausgeführt wird, und deadlocks ganz einfach möglich.When you suspend a thread, you have no way of knowing what code it is executing, and deadlocks can occur very easily. Z. B. Wenn Sie einen Thread anhalten, während es bei der Auswertung von Sicherheitsberechtigungen Sperren aufrechterhält, andere threads in der AppDomain blockiert werden.For example, if you suspend a thread while it holds locks during a security permission evaluation, other threads in the AppDomain might be blocked. Wenn Sie einen Thread anhalten, während der Konstruktor einer Klasse ausgeführt wird, andere threads in der AppDomain , die versuchen, zu verwenden, der Klasse werden blockiert.If you suspend a thread while it is executing a class constructor, other threads in the AppDomain that attempt to use that class are blocked.

Siehe auch

StackTrace(Exception, Int32, Boolean) StackTrace(Exception, Int32, Boolean) StackTrace(Exception, Int32, Boolean) StackTrace(Exception, Int32, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts. Dabei wird die angegebene Anzahl von Rahmen übersprungen, und Quellinformationen können wahlweise aufgezeichnet werden.Initializes a new instance of the StackTrace class using the provided exception object, skipping the specified number of frames and optionally capturing source information.

public:
 StackTrace(Exception ^ e, int skipFrames, bool fNeedFileInfo);
public StackTrace (Exception e, int skipFrames, bool fNeedFileInfo);
new System.Diagnostics.StackTrace : Exception * int * bool -> System.Diagnostics.StackTrace
Public Sub New (e As Exception, skipFrames As Integer, fNeedFileInfo As Boolean)

Parameter

e
Exception Exception Exception Exception

Das Ausnahmeobjekt, von dem aus die Stapelüberwachung erstellt werden soll.The exception object from which to construct the stack trace.

skipFrames
Int32 Int32 Int32 Int32

Die Anzahl der Stapelrahmen, ab der die Überwachung begonnen werden soll.The number of frames up the stack from which to start the trace.

fNeedFileInfo
Boolean Boolean Boolean Boolean

true, wenn Dateiname, Zeilennummer und Spaltennummer aufgezeichnet werden sollen, andernfalls false.true to capture the file name, line number, and column number; otherwise, false.

Ausnahmen

Der skipFrames-Parameter ist negativ.The skipFrames parameter is negative.

Hinweise

Die resultierende stapelüberwachung werden im Stapel zum Zeitpunkt der Ausnahme beschreibt.The resulting stack trace describes the stack at the time of the exception.

Wenn die Anzahl der zu überspringenden Frames größer als ist oder gleich der Gesamtzahl der Frames in der Aufrufliste, die zum Zeitpunkt die Instanz erstellt wird, die StackTrace enthält keine Frames.If the number of frames to skip is greater than or equal to the total number of frames on the call stack at the time the instance is created, the StackTrace will contain no frames.

Siehe auch

StackTrace(Exception, Boolean) StackTrace(Exception, Boolean) StackTrace(Exception, Boolean) StackTrace(Exception, Boolean)

Initialisiert eine neue Instanz der StackTrace-Klasse unter Verwendung des bereitgestellten Ausnahmeobjekts und zeichnet optional Quellinformationen auf.Initializes a new instance of the StackTrace class, using the provided exception object and optionally capturing source information.

public:
 StackTrace(Exception ^ e, bool fNeedFileInfo);
public StackTrace (Exception e, bool fNeedFileInfo);
new System.Diagnostics.StackTrace : Exception * bool -> System.Diagnostics.StackTrace
Public Sub New (e As Exception, fNeedFileInfo As Boolean)

Parameter

exception
Exception Exception Exception Exception

Das Ausnahmeobjekt, von dem aus die Stapelüberwachung erstellt werden soll.The exception object from which to construct the stack trace.

needFileInfo
Boolean Boolean Boolean Boolean

true, wenn Dateiname, Zeilennummer und Spaltennummer aufgezeichnet werden sollen, andernfalls false.true to capture the file name, line number, and column number; otherwise, false.

Ausnahmen

Hinweise

Die resultierende stapelüberwachung werden im Stapel zum Zeitpunkt der Ausnahme beschreibt.The resulting stack trace describes the stack at the time of the exception.

Siehe auch

Gilt für: