在ASP.NET中,如果项目处于会话状态,即实现IDisposable,但是当会话到期时,应用程序永远不会被应用程序专门删除和处理,将在对象上调用Dispose()中的任何代码将执行?
我不同意肖恩的回答; 首先,终结者不应该例行地添加到类中,即使它们是IDisposable
- 终结器应该只用于代表非托管资源的类中.相反,一个带终结器的课程也经常IDisposable
.
重新提出问题:被Dispose()
称为 - 不,不是.该对象将在未来的某个时刻被收集(不确定),但这就是它.终结器在这里不会增加太多,因为任何封装的对象也已经有资格进行收集(假设它们没有在别处引用).