2

您好 Stackoverflow 上的聪明人,我想知道在 ASP.Net C# 中,应用程序是否会在发生错误或触发 Application_Error 时结束?根据我的理解,它不应该,我只是想加倍确定

4

4 回答 4

1

通常,如果与请求关联的线程中发生异常,它会触发 Application_Error 事件,如果未处理,则会向客户端返回 HTTP 500 错误。

但是,与请求无关的线程中未处理的异常将关闭工作进程(换句话说,杀死您的应用程序)。即使您通过 Application_Error 方法设置了处理程序,也会发生这种情况。托管线程中的异常的 MSDN 链接以获取更多详细信息

于 2012-05-15T12:53:55.460 回答
0

如果您不处理异常,很可能会将您带到 HTTP 500 错误页面。

应用程序本身不会“结束”,因为它是一个 Web 应用程序。任何重新进入该网站都可能会开始一个新的会话。

于 2012-05-15T12:38:23.547 回答
0

不,不会的。Application_End 与托管 IIS 进程 (w3wp.exe) 正常终止一起触发。正常终止的最可能原因是 IIS 像定期间隔那样回收进程。

于 2012-05-15T12:39:02.367 回答
0

不,当发生未处理的异常时,不会触发 application_end 事件。Application_Error 将被触发。

通常,Application_End 在应用程序池被回收或重新启动 IIS 时触发。

于 2012-05-15T12:42:55.420 回答