45

谁能告诉我在应用程序的生命周期中何时触发 Application_End ?当所有会话结束时,Application_End 会自动触发吗?+ 是否还有其他原因可以触发 Application_End?

4

3 回答 3

40

application_end事件主要在 IIS 池被回收或应用程序本身被卸载时触发。需要注意的另一件事是,对依赖文件(例如 web.config)的更改将导致应用程序重新加载自身,这将导致 application_end 事件在它关闭时触发。

需要注意的是,我在最后一个用户会话超时时发现的应用程序结束事件触发的唯一实例是在一些日期为 2001 年的旧文档中。我不确定该标准是否仍然适用。

于 2008-11-13T21:32:37.767 回答
12

Application_End 在 ASP.NET 工作进程终止时触发。这通常发生在一段可配置的不活动期之后或 IIS(或相关的应用程序池)关闭或重新启动时。

在 IIS 6.0 中运行时,可通过 Internet 服务管理器中的应用程序池设置来配置不活动超时(性能选项卡上的空闲超时)。在早期版本的 IIS 下,它可以在 machine.config 中设置(processModel 下的 idleTimeout)。

于 2008-11-13T21:37:18.693 回答
0

在我的情况下,Aapplication Pool 正在被回收,因为属性Idle Time-Out (minutes)

此属性的默认值为 20(分钟)

在此处输入图像描述

于 2021-06-27T00:31:22.210 回答