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
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
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 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.