【发布时间】:2010-07-01 11:52:35
【问题描述】:
链接写在http://msdn.microsoft.com/en-us/magazine/bb985010.aspx
“当应用程序创建新对象时,new 运算符从堆中分配内存。如果对象的类型包含 Finalize 方法,则指向该对象的指针被放置在终结队列中。”
谁能帮我解释一下
1) 这意味着,只有当我们显式使用 finalize(使用析构函数)时,对象才会进入 finalize 队列。
2) 每个 .NET 类都隐式使用 finalize(使用析构函数),因此所有 .net 类库对象都将进入 finalize 队列。
3)我们的自定义类怎么样 A类 { } 类 A obj 是否会完成,同时考虑两种情况(显式/隐式析构函数)
4) 如果上面的类是用非托管代码编写的,会发生什么。它是否会进入finalize queue
谢谢
【问题讨论】: