zoukankan      html  css  js  c++  java
  • ASP.NET: 正在中止线程 错误原及解决方法

    #[操作记录]:2010-02-23 9:25:12  System.Threading.ThreadAbortException: 正在中止线程。

    症状

    如果使用 Response.EndResponse.Redirect 或 Server.Transfer 方法,将出现 ThreadAbortException异常。您可以使用 try-catch 语句捕获此异常。
     

    原因

    <!-- Inject Script Filtered -->

    Response.End 方法终止页的执行,并将此执行切换到应用程序的事件管线中的 Application_EndRequest 事件。不执行 Response.End 后面的代码行。

    此问题出现在 Response.Redirect 和 Server.Transfer 方法中,因为这两种方法均在内部调用Response.End
     

    解决方案

    要解决此问题,请使用下列方法之一:
      对于 Response.End,调用 HttpContext.Current.ApplicationInstance.CompleteRequest 方法而不是 Response.End 以跳过 Application_EndRequest 事件的代码执行。
      对于 Response.Redirect,请使用重载 Response.Redirect(String url, bool endResponse),该重载对 endResponse 参数传递 false 以取消对 Response.End 的内部调用。例如:
      Response.Redirect ("nextpage.aspx", false);
                
    如果使用此替代方法,将执行 Response.Redirect 后面的代码。
        对于 Server.Transfer,请改用 Server.Execute 方法。
  • 相关阅读:
    sfs2x 连接 mongodb
    java websocket
    webstorm 4.0 注册码
    解决 sfs2 admin tool 找不到扩展
    window 注册表五大类
    opengl 学习第二日
    java google Protobuf
    扩展 java sencha touch PhonegapPlugin
    sencha touch2 kryonet socket phonegap 通信 作者:围城
    sencha touch2 layout 笔记
  • 原文地址:https://www.cnblogs.com/Fooo/p/5418077.html
Copyright © 2011-2022 走看看