zoukankan      html  css  js  c++  java
  • ASP.NET中导致程序重启的几个东东

        最近在做一个项目,由于在项目中用到文件的修改和增删,而这些操作都是在IIS运行的情况下完成的,其中我们还对进度进行跟踪,涉及到线程等等因此我们应用静态变量来完成这一跟踪。但是在项目运行过程中,静态变量经常失效,而导致这一结果的是由于IIS的应用程序重启,使得应用程序池回收静态变量等等都失效。以前没有注意到这个问题,搞了很久才把这些给搞清楚。

        导致应用程序重启可能有很多种方法,而这次我碰到的有以下几种,可能这是人人皆知的我还是把他们给记下来。

        1.这个可能人人都知道,只要我们更新web.config文件,替换文件会导致这个应用程序重启;

        2.还有一个是全局global.asax这个文件的更新也会导致重启,这个文件一个应用程序就一个,有点像管道模型;

        3.还有一个就是bin目录的更新也会导致文件的重启;

        4. ...

        应用程序的重启会使我们的所有变量,缓存等等失效,有时也会给我们带来我们想要的结果。在这次应用中还遇到了线程的操作,在用Thread.CurrentThread.Abort()来终止线程时,会抛出一个错误,这个和Response.Redirect(string)效果是一样的,所以不能对其用try{}catch{}操作。

  • 相关阅读:
    Web前端之jQuery 的10大操作技巧
    Python开发者须知 —— Bottle框架常见的几个坑
    string、const char*、 char* 、char[]相互转换
    SLAM中的变换(旋转与位移)表示方法
    SLAM
    二叉搜索树(BST)
    Linux下OSG的编译和安装以及遇到的问题
    CMake--Set用法
    CMake--List用法
    php面向对象面试题
  • 原文地址:https://www.cnblogs.com/xdotnet/p/aspnet_application_onoff.html
Copyright © 2011-2022 走看看