Может ли кто-нибудь сказать мне, когда Application_End запускается в жизненном цикле приложения? Когда все сеансы будут завершены, автоматически будет запущено приложение Application_End? + Есть ли другие причины, по которым Application_End может быть запущен?
Application_End global.asax
Ответ 1
Событие application_end
в основном запускается, когда пул IIS перерабатывается или само приложение выгружается. Еще одна вещь, чтобы отметить, что изменение зависимого файла (скажем, web.config) приведет к перезагрузке приложения, что приведет к срабатыванию события application_end, когда оно закрывается.
Следует отметить, что единственный экземпляр, который я обнаружил при запуске конечного события приложения, когда последний сеанс пользователя отключен, приведен в старой документации 2001 года. Я не уверен, что этот критерий все еще применяется.
Ответ 2
Application_End запускается, когда рабочий процесс ASP.NET завершается. Обычно это происходит после настраиваемого периода бездействия или когда IIS (или соответствующий пул приложений) выключается или перезапускается.
При работе в IIS 6.0 таймаут бездействия настраивается через настройки пула приложений в диспетчере служб Интернета (Idle Timeout на вкладке Performance). В более ранних версиях IIS его можно установить в machine.config(idleTimeout в processModel).