Asp.Net做的一个程序,通过JQuery的Ajax调用,程序执行的数据时间比较长,程序部署到服务器后执行一段时间后就弹出执行失败的对话框,日志记录的错误信息是“正在中止线程”。
1、根据“AspNet 正在中止线程“进行搜索,得到的结果基本都是跟”Response.End“有关的,但我的代码中没有Response.End;
查找先关解决办法,然而并没有解决问题
2、在程序添加程序日志,根据日志结果发现,程序中有个循环操作,在循环体中的某个操作总是出现问题;
怀疑shihttpRuntime超时了,查看配置问题
<system.web>
<compilation debug="true" targetFramework="4.5.1"/>
<httpRuntime/> 修改为 <httpRuntime executionTimeout="60000000"/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
<globalization fileEncoding="utf-8"/>
</system.web>
奇怪的是在本机运行的时候即使没有设置executionTimeout也不会出现问题,原因是在本机的Webconfig中的compilation节点的有个debug属性设置为true,发布后的Webconfig中的compilation没有debug节点,当debug属性为false时,httpRuntime的executionTimeout属性才会生效。
Asp.Net Thread is being Aborted
原文:http://www.cnblogs.com/bluestream/p/4981258.html