Consistency Enumeration

Definition

Achtung

The Constrained Execution Region (CER) feature is not supported.

Gibt einen Zuverlässigkeitsvertrag an.

public enum class Consistency
[System.Obsolete("The Constrained Execution Region (CER) feature is not supported.", DiagnosticId="SYSLIB0004", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum Consistency
public enum Consistency
[System.Serializable]
public enum Consistency
[<System.Obsolete("The Constrained Execution Region (CER) feature is not supported.", DiagnosticId="SYSLIB0004", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type Consistency = 
type Consistency = 
[<System.Serializable>]
type Consistency = 
Public Enum Consistency
Vererbung
Consistency
Attribute

Felder

MayCorruptAppDomain 1

Unter Ausnahmebedingungen garantiert die Common Language Runtime nicht die Zustandskonsistenz innerhalb der aktuellen Anwendungsdomäne.

MayCorruptInstance 2

Unter Ausnahmebedingungen schränkt die Methode Zustandsänderungen an der aktuellen Instanz ein.

MayCorruptProcess 0

Unter Ausnahmebedingungen garantiert die Common Language Runtime nicht die Zustandskonsistenz. Das heißt, dass die Bedingung den Prozess beeinträchtigen könnte.

WillNotCorruptState 3

Unter Ausnahmebedingungen ändert die Methode keinen Zustand. (Dies garantiert nicht, dass bei der Methode nie ein Fehler auftreten wird; es garantiert jedoch, dass ein solcher Fehler nie den Zustand beschädigt.)

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung der Consistency Enumeration beim Angeben eines eingeschränkten Ausführungsbereichs für eine Methode. Dieses Codebeispiel ist Teil eines größeren Beispiels für den ReliabilityContractAttribute Konstruktor.

[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

Hinweise

Die Consistency Enumeration wird als Parameter für das ReliabilityContractAttribute Attribut verwendet, um die Zuverlässigkeitsgarantie für eine bestimmte Methode anzugeben.

Gilt für:

Weitere Informationen