I have to deal with legacy ASP.NET application written in .NET Framework 1.1. When checking the application code I found interesting part. The application starts custom thread in Application_Start event handler (Global.asax). This thread must run whole life of the application.
Long time ago I read that this should be never used but I don't remember why. What are the problems related to such application design? Is it possible to start thread again when it crashes? Will the crash be logged somewhere automatically (event log)? Can ASP.NET runtime kill the thread for any reason?
At the moment I'm not interested in AppPool recycling. It restarts application, all sessions and creates new thread.