RegexMatchTimeoutException Classe

Definizione

Eccezione generata quando il tempo di esecuzione di un metodo di corrispondenza dei criteri di espressione regolare supera l'intervallo di timeout.

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
Ereditarietà
RegexMatchTimeoutException
Ereditarietà
RegexMatchTimeoutException
Attributi
Implementazioni

Commenti

La presenza di un'eccezione RegexMatchTimeoutException indica in genere una delle condizioni seguenti:

  • Il motore delle espressioni regolari esegue il backtracking eccessivamente quando tenta di associare il testo di input al criterio di espressione regolare.
  • L'intervallo di timeout è stato impostato troppo basso, in particolare in caso di carico elevato del computer.

Il modo in cui un gestore eccezioni gestisce un'eccezione dipende dalla causa dell'eccezione:

Se il timeout risulta da un backtracking eccessivo, il gestore eccezioni deve abbandonare il tentativo di trovare la corrispondenza con l'input e informare l'utente che si è verificato un timeout nel metodo di ricerca dei criteri di ricerca delle espressioni regolari. Se possibile, è necessario registrare informazioni sul criterio di espressione regolare, disponibile dalla Pattern proprietà e sull'input che ha causato un backtracking eccessivo, disponibile dalla Input proprietà , in modo che il problema possa essere analizzato e modificato il criterio di espressione regolare. I timeout dovuti a un backtracking eccessivo sono sempre riproducibili.

Se il timeout risulta dall'impostazione della soglia di timeout troppo bassa, è possibile aumentare l'intervallo di timeout e ripetere l'operazione di corrispondenza. L'intervallo di timeout corrente è disponibile dalla MatchTimeout proprietà . Quando viene generata un'eccezione RegexMatchTimeoutException , il motore delle espressioni regolari mantiene lo stato in modo che qualsiasi chiamata futura restituisca lo stesso risultato, come se l'eccezione non si verificasse. Il modello consigliato prevede l'attesa di un breve intervallo di tempo casuale dopo la generazione dell'eccezione prima di chiamare di nuovo il metodo corrispondente. Questa operazione può essere ripetuta più volte. Tuttavia, il numero di ripetizioni deve essere ridotto nel caso in cui il timeout sia causato da un backtracking eccessivo.

Costruttori

Nome Descrizione
RegexMatchTimeoutException()

Inizializza una nuova istanza della RegexMatchTimeoutException classe con un messaggio fornito dal sistema.

RegexMatchTimeoutException(SerializationInfo, StreamingContext)
Obsoleti.

Inizializza una nuova istanza della RegexMatchTimeoutException classe con dati serializzati.

RegexMatchTimeoutException(String, Exception)

Inizializza una nuova istanza della RegexMatchTimeoutException classe con un messaggio di errore specificato e un riferimento all'eccezione interna che è la causa di questa eccezione.

RegexMatchTimeoutException(String, String, TimeSpan)

Inizializza una nuova istanza della RegexMatchTimeoutException classe con informazioni sul modello di espressione regolare, sul testo di input e sull'intervallo di timeout.

RegexMatchTimeoutException(String)

Inizializza una nuova istanza della RegexMatchTimeoutException classe con la stringa di messaggio specificata.

Proprietà

Nome Descrizione
Data

Ottiene una raccolta di coppie chiave/valore che forniscono informazioni aggiuntive definite dall'utente sull'eccezione.

(Ereditato da Exception)
HelpLink

Ottiene o imposta un collegamento al file della Guida associato a questa eccezione.

(Ereditato da Exception)
HResult

Ottiene o imposta HRESULT, valore numerico codificato assegnato a un'eccezione specifica.

(Ereditato da Exception)
InnerException

Ottiene l'istanza Exception che ha causato l'eccezione corrente.

(Ereditato da Exception)
Input

Ottiene il testo di input che il motore delle espressioni regolari stava elaborando quando si è verificato il timeout.

MatchTimeout

Ottiene l'intervallo di timeout per una corrispondenza di un'espressione regolare.

Message

Ottiene un messaggio che descrive l'eccezione corrente.

(Ereditato da Exception)
Pattern

Ottiene il criterio di espressione regolare utilizzato nell'operazione di corrispondenza quando si è verificato il timeout.

Source

Ottiene o imposta il nome dell'applicazione o dell'oggetto che causa l'errore.

(Ereditato da Exception)
StackTrace

Ottiene una rappresentazione di stringa dei fotogrammi immediati nello stack di chiamate.

(Ereditato da Exception)
TargetSite

Ottiene il metodo che genera l'eccezione corrente.

(Ereditato da Exception)

Metodi

Nome Descrizione
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetBaseException()

Quando sottoposto a override in una classe derivata, restituisce l'oggetto Exception che rappresenta la causa radice di una o più eccezioni successive.

(Ereditato da Exception)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoleti.

In caso di override in una classe derivata, imposta con le SerializationInfo informazioni sull'eccezione.

(Ereditato da Exception)
GetType()

Ottiene il tipo di runtime dell'istanza corrente.

(Ereditato da Exception)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Crea e restituisce una rappresentazione di stringa dell'eccezione corrente.

(Ereditato da Exception)

Eventi

Nome Descrizione
SerializeObjectState
Obsoleti.

Si verifica quando viene serializzata un'eccezione per creare un oggetto stato dell'eccezione contenente dati serializzati sull'eccezione.

(Ereditato da Exception)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Popola un SerializationInfo oggetto con i dati necessari per serializzare un RegexMatchTimeoutException oggetto.

Si applica a

Vedi anche