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

Name Wert Beschreibung
MayCorruptProcess 0

Angesichts außergewöhnlicher Bedingungen garantiert die CLR keine Garantien hinsichtlich der Konsistenz des Staates; d. h., die Bedingung kann den Prozess beschädigen.

MayCorruptAppDomain 1

Angesichts außergewöhnlicher Bedingungen stellt die Common Language Runtime (CLR) keine Garantien hinsichtlich der Zustandskonsistenz in der aktuellen Anwendungsdomäne dar.

MayCorruptInstance 2

Angesichts außergewöhnlicher Bedingungen wird die Methode garantiert, die Zustandsbeschädigung auf die aktuelle Instanz zu beschränken.

WillNotCorruptState 3

Angesichts außergewöhnlicher Bedingungen ist die Methode garantiert nicht beschädigt. (Dies garantiert nicht, dass die Methode nie fehlschlägt. Sie garantiert jedoch, dass ein solcher Fehler niemals beschädigt wird.)

Beispiele

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

[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