According this MSDN article HttpApplication.EndRequest can be used to close or dispose of resources. However this event is not fired/called in my application.
We are attaching the handler in Page_Load the following way:
HttpContext.Current.ApplicationInstance.EndRequest += ApplicationInstance_EndRequest;
The only way is to use the Application_EndRequest handler in Global.asax, but this is not acceptable for us.