【发布时间】:2011-04-08 16:55:12
【问题描述】:
这是一个我需要帮助的面试问题。
您有以下 ASP.NET 代码隐藏类:
public partial class Page1 : Page
{
private string _value;
public Page1()
{
if (DateTime.Now.Ticks % 10 == 0)
_value = "Test";
}
~Page1()
{
if(_value.Equals("Test"))
_value = string.Empty;
}
}
任何时候有人请求此页面,w3wp.exe 进程都会意外终止。
为什么会发生这种情况而不是用户看到黄屏死机(默认 ASP.NET 错误页面)?
为什么托管堆上总是出现 OutOfMemoryException?
【问题讨论】:
-
快吗?你现在在面试吗?
-
如果 Ticks % 10 != 0 _value 将为空。你取消引用它。