LifetimeInformation インターフェイス
更新 : 2007 年 11 月
削除済みのオブジェクトがガベージ コレクタによって破棄されていないかどうかを確認する場合に使用されます。
名前空間 : EnvDTE80
アセンブリ : EnvDTE80 (EnvDTE80.dll 内)
構文
'宣言
<GuidAttribute("C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")> _
Public Interface LifetimeInformation
'使用
Dim instance As LifetimeInformation
[GuidAttribute("C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")]
public interface LifetimeInformation
[GuidAttribute(L"C8F4F9CC-B7E5-4458-BCE3-E1542468F26B")]
public interface class LifetimeInformation
public interface LifetimeInformation
解説
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);
}