原文:Response.End() 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。

原因: 如果使用 Response.End Response.Redirect 或 Server.Transfer 方法,将出现 ThreadAbortException 异常。您可以使用 try catch 语句捕获此异常。 Response.End 方法终止页的执行,并将此执行切换到应用程序的事件管线中的 Application EndRequest 事件。不执行 Response.End ...

2016-08-10 17:19 0 3340 推荐指数:

查看详情

c# 多线程 由于代码已经优化或者本机框架位于调用堆栈之上无法计算表达式

在网上找到一段解释: 堆栈是用于存放变量和方法,“位于调用堆栈之上”,我们可以理解为堆栈里面已经没有变量和方法可以调用了,其实也就是程序已经结束了,堆栈都空了(指针在原本堆栈的外部--之上)。放在我的实际场景里面:我开了一个异步去处理一个事件,而主线程并没有等待这个异步就直接结束了,实际上 ...

Thu Nov 23 23:44:00 CST 2017 0 1652
由于线程停在某个无法进行垃圾回收的点(可能是因为已对代码进行了优化),因此无法计算表达式

由于线程停在某个无法进行垃圾回收的点(可能是因为已对代码进行了优化),因此无法计算表达式. 先说下我出现这个异常情况的条件:我是在做WEB服务接入时,发生的,为了调用接口的方法,我先封装了一次,封装方法有2个参数,都是类类型。其它的这种方法都可以,只有这一个接口不通过。例如这个封装的方法 ...

Thu Apr 10 22:46:00 CST 2014 3 5373
Response.End() 与Response.Close()的区别

原来的测试程序,在Response.Flush()之后,调用Response.End(),而出错的程序在Response.Flush()之后,调用Response.Close()。直接将Close调用改为End后,问题消失。看来问题的根源就在这里了。 MSDN对两个方法给出的注释 ...

Mon Sep 28 22:35:00 CST 2015 0 4476
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM