Consistency 列挙型

定義

注意事項

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

信頼性のコントラクトを指定します。

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
継承
Consistency
属性

フィールド

MayCorruptAppDomain 1

例外条件の発生時に、共通言語ランタイム (CLR) は、現在のアプリケーション ドメイン内の状態の一貫性を保証しません。

MayCorruptInstance 2

例外条件の発生時に、そのメソッドでは、現在のインスタンスに対する状態の破損が限定的であることが保証されます。

MayCorruptProcess 0

例外条件の発生時に、CLR は、状態の一貫性を保証しません。つまり、この条件ではプロセスが破損する場合があります。

WillNotCorruptState 3

例外条件の発生時に、そのメソッドでは、状態が破損されないことが保証されます。 (メソッドが失敗しないことは保証されません。そうではなく、そのような失敗によって状態が破損されないことが保証されます。)

次のコード例では、メソッドの Consistency 制約付き実行領域を指定するときに 列挙体を使用する方法を示します。 このコード例は、コンストラクターに対して提供されるより大きな例の ReliabilityContractAttribute 一部です。

[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

注釈

Consistency列挙体は、 属性のReliabilityContractAttributeパラメーターとして使用され、特定のメソッドで信頼性保証を指定します。

適用対象

こちらもご覧ください