RegexMatchTimeoutException Klasse

Definition

Die Ausnahme, die ausgelöst wird, wenn die Ausführungszeit einer Methode für den Musterabgleich mit regulären Ausdrücken das Timeoutintervall überschreitet.

public ref class RegexMatchTimeoutException : TimeoutException
public class RegexMatchTimeoutException : TimeoutException
[System.Serializable]
public class RegexMatchTimeoutException : TimeoutException
type RegexMatchTimeoutException = class
    inherit TimeoutException
type RegexMatchTimeoutException = class
    inherit TimeoutException
    interface ISerializable
[<System.Serializable>]
type RegexMatchTimeoutException = class
    inherit TimeoutException
    interface ISerializable
Public Class RegexMatchTimeoutException
Inherits TimeoutException
Vererbung
RegexMatchTimeoutException
Vererbung
RegexMatchTimeoutException
Attribute
Implementiert

Hinweise

Das Vorhandensein einer RegexMatchTimeoutException Ausnahme weist im Allgemeinen auf eine der folgenden Bedingungen hin:

  • Das Modul für reguläre Ausdrücke wird übermäßig nachverfolgt, da versucht wird, den Eingabetext mit dem Muster für reguläre Ausdrücke abzugleichen.
  • Das Timeoutintervall wurde zu niedrig festgelegt, insbesondere bei hoher Maschinenlast.

Die Art und Weise, in der ein Ausnahmehandler eine Ausnahme behandelt, hängt von der Ursache der Ausnahme ab:

Wenn das Timeout zu einer übermäßigen Rückverfolgung führt, sollte der Ausnahmehandler den Versuch abbrechen, die Eingabe abzugleichen, und den Benutzer darüber informieren, dass ein Timeout in der Methode für den Musterabgleich mit regulären Ausdrücken aufgetreten ist. Wenn möglich, sollten Informationen über das Muster des regulären Ausdrucks, das über die Pattern Eigenschaft verfügbar ist, und die Eingabe, die zu einer übermäßigen Rückverfolgung geführt hat, Input protokolliert werden, damit das Problem untersucht und das Muster des regulären Ausdrucks geändert werden kann. Timeouts aufgrund übermäßiger Rückverfolgung sind immer reproduzierbar.

Wenn das Timeout dazu führt, dass der Timeoutschwellenwert zu niedrig festgelegt wird, können Sie das Timeoutintervall erhöhen und den Abgleich wiederholen. Das aktuelle Timeoutintervall ist über die MatchTimeout Eigenschaft verfügbar. Wenn eine RegexMatchTimeoutException Ausnahme ausgelöst wird, behält das Modul für reguläre Ausdrücke seinen Zustand bei, sodass zukünftige Aufrufe dasselbe Ergebnis zurückgeben, als ob die Ausnahme nicht aufgetreten ist. Das empfohlene Muster besteht darin, nach dem Auslösen der Ausnahme auf ein kurzes, zufälliges Zeitintervall zu warten, bevor die entsprechende Methode erneut aufgerufen wird. Dies kann mehrmals wiederholt werden. Die Anzahl der Wiederholungen sollte jedoch klein sein, falls das Timeout durch übermäßige Rückverfolgung verursacht wird.

Konstruktoren

Name Beschreibung
RegexMatchTimeoutException()

Initialisiert eine neue Instanz der RegexMatchTimeoutException Klasse mit einer vom System bereitgestellten Nachricht.

RegexMatchTimeoutException(SerializationInfo, StreamingContext)
Veraltet.

Initialisiert eine neue Instanz der RegexMatchTimeoutException Klasse mit serialisierten Daten.

RegexMatchTimeoutException(String, Exception)

Initialisiert eine neue Instanz der RegexMatchTimeoutException Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die die Ursache dieser Ausnahme ist.

RegexMatchTimeoutException(String, String, TimeSpan)

Initialisiert eine neue Instanz der RegexMatchTimeoutException Klasse mit Informationen zum Muster für reguläre Ausdrücke, dem Eingabetext und dem Timeoutintervall.

RegexMatchTimeoutException(String)

Initialisiert eine neue Instanz der RegexMatchTimeoutException Klasse mit der angegebenen Nachrichtenzeichenfolge.

Eigenschaften

Name Beschreibung
Data

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen zur Ausnahme bereitstellen.

(Geerbt von Exception)
HelpLink

Dient zum Abrufen oder Festlegen eines Links zur Hilfedatei, die dieser Ausnahme zugeordnet ist.

(Geerbt von Exception)
HResult

Dient zum Abrufen oder Festlegen von HRESULT, einem codierten numerischen Wert, der einer bestimmten Ausnahme zugewiesen ist.

(Geerbt von Exception)
InnerException

Ruft die Exception Instanz ab, die die aktuelle Ausnahme verursacht hat.

(Geerbt von Exception)
Input

Ruft den Eingabetext ab, den das Modul für reguläre Ausdrücke verarbeitet hat, als das Timeout aufgetreten ist.

MatchTimeout

Ruft das Timeoutintervall für eine Übereinstimmung mit regulären Ausdrücken ab.

Message

Ruft eine Nachricht ab, die die aktuelle Ausnahme beschreibt.

(Geerbt von Exception)
Pattern

Ruft das Muster für reguläre Ausdrücke ab, das beim Auftreten des Timeouts im Abgleichsvorgang verwendet wurde.

Source

Dient zum Abrufen oder Festlegen des Namens der Anwendung oder des Objekts, das den Fehler verursacht.

(Geerbt von Exception)
StackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames im Aufrufstapel ab.

(Geerbt von Exception)
TargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.

(Geerbt von Exception)

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetBaseException()

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die Exception Ursache einer oder mehrerer nachfolgenden Ausnahmen zurückgegeben.

(Geerbt von Exception)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetObjectData(SerializationInfo, StreamingContext)
Veraltet.

Wenn sie in einer abgeleiteten Klasse überschrieben wird, werden die SerializationInfo Informationen zur Ausnahme festgelegt.

(Geerbt von Exception)
GetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.

(Geerbt von Exception)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Erstellt und gibt eine Zeichenfolgendarstellung der aktuellen Ausnahme zurück.

(Geerbt von Exception)

Ereignisse

Name Beschreibung
SerializeObjectState
Veraltet.

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmestatusobjekt zu erstellen, das serialisierte Daten zu der Ausnahme enthält.

(Geerbt von Exception)

Explizite Schnittstellenimplementierungen

Name Beschreibung
ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Füllt ein SerializationInfo Objekt mit den Daten auf, die zum Serialisieren eines RegexMatchTimeoutException Objekts erforderlich sind.

Gilt für:

Weitere Informationen