日期:2014-05-17  浏览次数:20542 次

Application_End 为什么永远不执行
静态(static)变量是在应用程序结束时卸载 ,测试了会在以下三种情况下静态变量会重新初始化

 1.修改web.config 配置文件.

 2 更新DLL也就是更新Bin的程序集.

 3 重新编译app_code 下的类. 

 

但测试在以上三种情况下 还有重启IIS都没看到 Application_End方法执行的时候  



下面还有个疑问public class test
{
  public int count { get; set; }

}
应用的时候是这样private static test test = new test();然后我输出 Response.Write(test.count += 1); 每次new 的时候count 会重新分配内存地址么 

测试 count 在多个浏览器打开是共享的 这个时候count 是不是public static int count { get; set; } 静态成员



------解决方案--------------------
探讨
静态(static)变量是在应用程序结束时卸载 ,测试了会在以下三种情况下静态变量会重新初始化