DependentHandle 結構
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示相依垃圾收集句柄。 只要目標物件執行個體也有運作,控制代碼就會根據條件讓相依的物件執行個體保持運作,而不呈現目標執行個體的強式參考。
public value class DependentHandle : IDisposable
public struct DependentHandle : IDisposable
type DependentHandle = struct
interface IDisposable
Public Structure DependentHandle
Implements IDisposable
- 繼承
- 實作
備註
DependentHandle具有指定物件實例作為目標的值,如果目標沒有其他強式參考,則不會讓目標保持運作,但只要目標保持運作,則相依物件實例就會這麼做。
使用此類型在概念上相當於具有指定目標對象實例 A 的弱式參考,而該物件具有欄位或屬性 (或其他一些強式參考) 相依物件實例 B。
此 DependentHandle 類型不是安全線程,且取用者負責確保 Dispose() 不會與其他 API 並行呼叫。 不這麼做會導致未定義的行為。
IsAllocated、Target、 Dependent和 TargetAndDependent 屬性會改為安全線程,而且如果沒有Dispose()同時叫用,則安全使用。
建構函式
DependentHandle(Object, Object) |
使用指定的自變數,初始化 結構的新實例 DependentHandle 。 |
屬性
Dependent |
取得或設定目前句柄的相依物件實例。 |
IsAllocated |
取得值,指出這個實例是否已使用 DependentHandle(Object, Object) 建構,而且尚未處置。 |
Target |
取得或設定目前句柄的目標物件實例。 一旦建立實例之後,DependentHandle目標只能設定為 |
TargetAndDependent |
如果可用) 為不可部分完成的作業,則取得 和 Dependent (的值Target。
也就是說,即使 Target 同時設定為 |
方法
Dispose() |
執行與釋放 (Free)、釋放 (Release) 或重設 Unmanaged 資源相關聯之應用程式定義的工作。 |