次の方法で共有


LifetimeInformation インターフェイス

削除済みのオブジェクトがガベージ コレクターによって破棄されていないかどうかを確認する場合に使用されます。

名前空間:  EnvDTE80
アセンブリ:  EnvDTE80 (EnvDTE80.dll 内)

構文

'宣言
<GuidAttribute("C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")> _
Public Interface LifetimeInformation
[GuidAttribute("C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")]
public interface LifetimeInformation
[GuidAttribute(L"C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")]
public interface class LifetimeInformation
[<GuidAttribute("C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")>]
type LifetimeInformation =  interface end
public interface LifetimeInformation

LifetimeInformation 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ HasBeenDeleted 削除済みのオブジェクトがガベージ コレクターによって破棄されていないかどうかを示す値を取得します。

このページのトップへ

解説

LifetimeInformation にインターフェイスの照会 (QI: Qery Interface) を使用して、削除済みのオブジェクトがガベージ コレクターによって破棄されていないかどうかを確認します。

Sub TaskItemObjectLifetime(ByVal DTE As DTE2)
    Dim tskItem As TaskItem
    Dim tskItems As EnvDTE.TaskItems
    Dim lifetimeInfo As LifetimeInformation

    tskItems = DTE.ToolWindows.TaskList.TaskItems
    tskItem = tskItems.Add("Category", "SubCategory", "Description", _
      vsTaskPriority.vsTaskPriorityLow, EnvDTE.vsTaskIcon. _
      vsTaskIconUser, True, "", -1, True, True)
    tskItems.ForceItemsToTaskList()
    lifetimeInfo = tskItem
    MsgBox("Has task item been deleted? " & _
      lifetimeInfo.HasBeenDeleted.ToString)
    tskItem.Delete()
    MsgBox("Has task item been deleted? " & _
      lifetimeInfo.HasBeenDeleted.ToString)
End Sub
public void TaskItemObjectLifetime(DTE2 DTE)
{
    TaskItem tskItem;
    EnvDTE.TaskItems tskItems;
    LifetimeInformation lifetimeInfo;

    tskItems = DTE.ToolWindows.TaskList.TaskItems;
    tskItem = tskItems.Add("Category", "SubCategory", "Description", 
      vsTaskPriority.vsTaskPriorityLow, 
      EnvDTE.vsTaskIcon.vsTaskIconUser, true, "", -1, true, true);
    tskItems.ForceItemsToTaskList();
    lifetimeInfo = (LifetimeInformation)tskItem;
    MessageBox.Show("Has task item been deleted? " + 
      lifetimeInfo.HasBeenDeleted);
    tskItem.Delete();
    MessageBox.Show("Has task item been deleted? " +  
      lifetimeInfo.HasBeenDeleted);
}

参照

関連項目

EnvDTE80 名前空間

その他の技術情報

方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する