asp.net开发,Global.asax里Session_End不执行的原因

[开发] 季雨林 2018/6/28 13:55:48

        以前遇到过题目中的问题,但是由于可以放倒数据库实现,因此变通解决了。

        今天再次遇到这个问题,是由于程序中不可避免的调用了一个第三方exe,如果不做显式调用释放掉,唤起的第三方工具,会一直占据cpu内存进程等资源。于是各种搜索,重新探索其根本原因(果然做技术时候不能偷懒)


解决方案

注意一下几个关键点,即可轻松回避Global.asax里Session_End不执行的问题。经过测试,设置后可行!

1,Session_End方法中的代码如果运行报错,会立即返回(不会记录错误,不会抛出任何异常,不能用 Respone.Write 方法输出)

2,Session_End方法中不能使用 Server.MapPath方法、Request类、Cache 类、HttpContext.Current类

3,Web.Config 配置文件中, <system.web> 节点下 <sessionState mode="InProc" timeout="1"></sessionState> 模式设置为 InProc





原文地址: https://www.opengps.cn/Blog/View.aspx?id=130 文章的更新编辑依此链接为准。欢迎关注源站原创文章!
文末推荐: 阿里云代金券礼包,感谢领取支持本文!!

暂不开启留言板块

鲁ICP备14008001号-2