この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

MethodImplOptions 列挙型

 

メソッドを実装する方法の詳細を定義します。

この列挙型には、メンバー値のビットごとの組み合わせを許可する FlagsAttribute 属性があります。

名前空間:   System.Runtime.CompilerServices
アセンブリ:  mscorlib (mscorlib.dll 内)

[SerializableAttribute]
[FlagsAttribute]
[ComVisibleAttribute(true)]
public enum MethodImplOptions

メンバー名説明
AggressiveInlining

可能な場合は、メソッドを常にインライン展開する必要があります。

ForwardRef

メソッドが宣言されましたが、その実装は別の場所で提供されます。

InternalCall

この呼び出しは内部的なものです。つまり、共通言語ランタイムの内部に実装されたメソッドの呼び出しです。

NoInlining

メソッドはインライン化できません。 インライン展開とは、メソッド呼び出しをメソッド本体に置換する最適化のことです。

NoOptimization

コード生成の問題をデバッグする場合に、メソッドを最適化するために Just-In-Time (JIT) コンパイラまたはネイティブ コードによる生成を使用しません (Ngen.exe を参照)。

PreserveSig

メソッド シグネチャは宣言どおりにエクスポートされます。

Synchronized

メソッドを実行できるのは、一度に 1 つのスレッドだけです。 静的メソッドは型をロックし、インスタンス メソッドはインスタンスをロックします。 インスタンス関数で実行できるスレッドは 1 つだけです。また、クラスの静的関数で実行できるスレッドも 1 つだけです。

Unmanaged

メソッドはアンマネージ コードに実装されます。

This enumeration is used with the T:System.Runtime.CompilerServices.MethodImplAttribute attribute.

You can specify multiple T:System.Runtime.CompilerServices.MethodImplOptions values by using the bitwise OR operator.

System_CAPS_noteメモ

Locking on the instance or on the type, as with the F:System.Runtime.CompilerServices.MethodImplOptions.Synchronized flag, is not recommended for public types, because code other than your own can take locks on public types and instances. This might cause deadlocks or other synchronization problems.

ユニバーサル Windows プラットフォーム
8 以降で使用可能
.NET Framework
1.1 以降で使用可能
ポータブル クラス ライブラリ
サポート対象: 移植可能 .NET プラットフォーム
Silverlight
2.0 以降で使用可能
Windows Phone Silverlight
7.0 以降で使用可能
Windows Phone
8.1 以降で使用可能
トップに戻る
表示: