Lieven Cardoen
Lieven Cardoen

Reputation: 25959

Application_End global.asax

Can anybody tell me when Application_End is triggered in a lifecycle of an application? When all sessions are ended, will Application_End be triggered automatically? + Are there any other reasons why Application_End could be triggered?

Upvotes: 46

Views: 57120

Answers (3)

Daniel Giacomelli
Daniel Giacomelli

Reputation: 99

In my case, the Aapplication Pool was being recycled because the property Idle Time-Out (minutes)

The Default value of this property is 20 (minutes)

enter image description here

Upvotes: 0

Dillie-O
Dillie-O

Reputation: 29725

The application_end event primarily fires when the IIS pool is recycled or the application itself is unloaded. One other thing to note, that a change to a dependent file (say web.config) will cause the application to reload itself, which will in cause the application_end event to fire while it is closing itself off.

To note, the only instance I found of the application end event firing when the last user session times out is in some old documentation dated 2001. I'm not sure if that criteria still applies.

Upvotes: 40

Eric Rosenberger
Eric Rosenberger

Reputation: 5119

Application_End is triggered when the ASP.NET worker process terminates. This usually occurs after a configurable period of inactivity or when IIS (or the relevant application pool) is shut down or restarted.

When running in IIS 6.0, the inactivity timeout is configurable through the application pool settings in Internet Services Manager (Idle Timeout on the Performance tab). Under earlier versions of IIS it can be set in machine.config (idleTimeout under processModel).

Upvotes: 12

Related Questions