Consistency Enum
Definition
Specifies a reliability contract.
public enum class Consistency
[System.Serializable]
public enum Consistency
type Consistency =
Public Enum Consistency
- Inheritance
- Attributes
Fields
MayCorruptAppDomain | 1 | In the face of exceptional conditions, the common language runtime (CLR) makes no guarantees regarding state consistency in the current application domain. |
MayCorruptInstance | 2 | In the face of exceptional conditions, the method is guaranteed to limit state corruption to the current instance. |
MayCorruptProcess | 0 | In the face of exceptional conditions, the CLR makes no guarantees regarding state consistency; that is, the condition might corrupt the process. |
WillNotCorruptState | 3 | In the face of exceptional conditions, the method is guaranteed not to corrupt state. (This does not guarantee that the method will never fail; however, it does guarantee that such a failure will never corrupt state.) |
Examples
The following code example demonstrates the use of the Consistency enumeration when specifying a constrained execution region for a method. 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
Remarks
The Consistency enumeration is used as a parameter to the ReliabilityContractAttribute attribute to specify the reliability guarantee on a given method.