SafeHandle.DangerousAddRef(Boolean) メソッド

定義

SafeHandle インスタンスの参照カウンターを手動でインクリメントします。Manually increments the reference counter on SafeHandle instances.

public:
 void DangerousAddRef(bool % success);
[System.Security.SecurityCritical]
public void DangerousAddRef (ref bool success);
public void DangerousAddRef (ref bool success);
member this.DangerousAddRef : bool -> unit
Public Sub DangerousAddRef (ByRef success As Boolean)

パラメーター

success
Boolean

参照カウンターが正常にインクリメントされた場合はtrue 。それ以外の場合は falsetrue if the reference counter was successfully incremented; otherwise, false.

属性

注釈

DangerousAddRef メソッドは、共通言語ランタイムがハンドルによって使用されるメモリを再利用できないようにします (ランタイムが ReleaseHandle メソッドを呼び出すと発生します)。The DangerousAddRef method prevents the common language runtime from reclaiming memory used by a handle (which occurs when the runtime calls the ReleaseHandle method). このメソッドを使用すると、SafeHandle インスタンスの参照カウントを手動でインクリメントできます。You can use this method to manually increment the reference count on a SafeHandle instance. DangerousAddRef は、参照カウントが正常にインクリメントされたかどうかを示す ref パラメーター (success) を使用してブール値を返します。DangerousAddRef returns a Boolean value using a ref parameter (success) that indicates whether the reference count was incremented successfully. これにより、エラーが発生した場合にプログラムロジックを戻すことができます。This allows your program logic to back out in case of failure. DangerousAddRefを呼び出す前に、successfalse に設定する必要があります。You should set success to false before calling DangerousAddRef. successtrue場合、DangerousAddRef の呼び出しを DangerousReleaseへの対応する呼び出しと照合することで、リソースリークを回避します。If success is true, avoid resource leaks by matching the call to DangerousAddRef with a corresponding call to DangerousRelease.

注意事項

この方法は上級ユーザーを対象としており、常に慎重に使用する必要があります。This method is intended for advanced users and must always be used carefully. ハンドルリソースがリークしないようにするには、常に、制約された実行領域 (CER) 内でこのメソッドを呼び出します。この場合、スレッドの中止で処理を中断することはできません。To avoid leaking handle resources, always call this method inside a constrained execution region (CER), where a thread abort cannot interrupt processing.

適用対象

こちらもご覧ください