Consistency Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
- 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.