Cer Cer Cer Cer Enum

Definición

Especifica el comportamiento de un método cuando se llama dentro de una región de ejecución limitada.Specifies a method's behavior when called within a constrained execution region.

public enum class Cer
[System.Serializable]
public enum Cer
type Cer = 
Public Enum Cer
Herencia
Atributos

Campos

MayFail MayFail MayFail MayFail 1

Ante condiciones excepcionales, el método podría generar errores.In the face of exceptional conditions, the method might fail. En este caso, el método notificará al método que realizó la llamada si se ejecutó correctamente o con errores.In this case, the method will report back to the calling method whether it succeeded or failed. El método debe tener una CER alrededor del cuerpo del método para garantizar que puede notificar el valor devuelto.The method must have a CER around the method body to ensure that it can report the return value.

None None None None 0

El método, tipo o ensamblado no tiene ningún concepto de CER.The method, type, or assembly has no concept of a CER. No se aprovecha de las garantías de la CER.It does not take advantage of CER guarantees. Esto implica lo siguiente:This implies the following:

Success Success Success Success 2

Ante condiciones excepcionales, se garantiza la ejecución correcta del método.In the face of exceptional conditions, the method is guaranteed to succeed. Siempre se debe crear una CER alrededor del método al que se llama, aunque la llamada se realice desde una región no CER.You should always construct a CER around the method that is called, even when it is called from within a non-CER region. Un método tiene éxito si logra lo que se pretende.A method is successful if it accomplishes what is intended. Por ejemplo, marcar Count con ReliabilityContractAttribute(Cer.Success) implica que cuando se ejecuta bajo una CER, siempre devuelve un recuento del número de elementos de ArrayList y nunca puede dejar los campos internos en estado indeterminado.For example, marking Count with ReliabilityContractAttribute(Cer.Success) implies that when it is run under a CER, it always returns a count of the number of elements in the ArrayList and it can never leave the internal fields in an undetermined state.

Ejemplos

En el ejemplo de código siguiente se muestra el uso de la Cer al especificar una región de ejecución restringida para un método de enumeración.The following code example demonstrates the use of the Cer enumeration when specifying a constrained execution region for a method. Este ejemplo de código forma parte de un ejemplo más extenso proporcionado para el ReliabilityContractAttribute constructor.This code example is part of a larger example provided for the ReliabilityContractAttribute constructor.

[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
[MethodImpl(MethodImplOptions.NoInlining)]
void StackDepth2()
{
    try
    {
        consistentLevel2 = false;
        if (depth == 2)
            Thread.Sleep(-1);
        StackDepth3();
    }
    finally
    {
        consistentLevel2 = true;
    }
}
<ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)>
<MethodImpl(MethodImplOptions.NoInlining)>
Sub StackDepth2()
   Try
      consistentLevel2 = False
      If depth = 2 Then Thread.Sleep(-1)
      StackDepth3()
   Finally
      consistentLevel2 = True
   End Try
End Sub

Comentarios

El Cer enumeración especifica el comportamiento de un método, tipo o ensamblado dentro de una región de ejecución restringida (CER).The Cer enumeration specifies the behavior of a method, type, or assembly within a constrained execution region (CER). Use uno de los tres valores disponibles para indicar que la entidad se realizará correctamente, no tiene conocimiento de una CER, o (de manera determinista) podría ser capaz de informes de éxito o error.Use one of the three available values to indicate that the entity will succeed, has no knowledge of a CER, or might (deterministically) be able to report success or failure.

Una CER proporciona garantías de que la región de código se ejecutará sin interrupciones incluso si se produce una excepción asincrónica, como una excepción de subproceso anulado de memoria insuficiente o desbordamiento de pila.A CER provides guarantees that the region of code will execute uninterrupted even if an asynchronous exception such as an aborted thread out-of-memory exception, or stack overflow is raised.

Se aplica a

Consulte también: