SafeHandle.DangerousAddRef(Boolean) SafeHandle.DangerousAddRef(Boolean) SafeHandle.DangerousAddRef(Boolean) SafeHandle.DangerousAddRef(Boolean) Method


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

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


Boolean Boolean Boolean 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. を呼び出すsuccess falseDangerousAddRefに、をに設定する必要があります。You should set success to false before calling DangerousAddRef. success DangerousAddRef DangerousReleaseの場合は、への呼び出しをの対応する呼び出しと照合することで、リソースのリークを回避します。 trueIf 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.


アンマネージコードを呼び出すためのアクセス許可。for permission to call unmanaged code. セキュリティアクション: LinkDemandSecurity action: LinkDemand. 関連付けられた列挙型:UnmanagedCodeAssociated enumeration: UnmanagedCode