加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

什么时候在asp.net WebService中调用Application_End

发布时间:2020-12-16 03:33:15 所属栏目:asp.Net 来源:网络整理
导读:什么时候Application_End在WebService的情况下才会触发? 我读过(Application_End global.asax)每次卸载应用程序时都会调用Application_End.这是否意味着每次调用Web服务中的方法后? 我有一段代码,我需要在第一次调用IIS时再触发一次,并在最后一次调用IIS之
什么时候Application_End在WebService的情况下才会触发?

我读过(Application_End global.asax)每次卸载应用程序时都会调用Application_End.这是否意味着每次调用Web服务中的方法后?

我有一段代码,我需要在第一次调用IIS时再触发一次,并在最后一次调用IIS之后(以及在回收之间)再次触发,我不能在每次WebService请求和响应时触发它…

解决方法

Application_End正是您所寻找的;根据您设置的配置卸载应用程序,但默认情况下,它会在任何请求进入后继续运行一段时间空闲,或者在请求不断进入时它将继续运行.

请注意,其他事情可能导致应用程序池刷新,从而导致调用Application_End;一定数量的重新编译(由于更改的aspx文件等),一定的时间段运行,一定的内存压力等.同样,这些都是可配置的,但通常设置为合理的默认值.

要记住的关键是,您可以期待Application_Start和Application_End之间有一段时间,但根据服务器上发生的情况,您无法知道将会有多少时间.

另请注意,当应用程序池被回收时,已经运行的请求不会突然停止,并且它们实际上可能与新进程处理的新请求重叠.这意味着在新的应用程序池启动后可能会调用旧的应用程序池的End.但这并不重要,因为每个应用程序都有自己的AppDomain,并且不共享数据. (但有时可以解释其他奇怪的行为.)哦,最后;即使这也是可配置的!

编辑:还有一件事要补充!请注意,如果突然关闭服务器,则不会调用Application_End.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读