微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

上传文件处理数据的时候提示 正在中止线程

使用ajax 上传文件文件较大循环处理数据的时候提示 “正在中止线程”

并没有使用多线程

终于在网上找到这个文章

 

https://www.cnblogs.com/oec2003/p/3437304.html

Asp.Net正在中止线程引发的问题

 

背景:

Asp.Net做的一个同步程序,同步的方法是通过JQuery的Ajax调用,同步过程大概要执行20多分钟,程序部署到服务器后执行一段时间后就弹出执行失败的对话框,日志记录的错误信息是“正在中止线程”。

查错过程:

1、根据“AspNet 正在中止线程“进行搜索,得到的结果基本都是跟”Response.End“有关的,但我的代码中没有Response.End,所以基本可以排除;

2、因为使用JQuery的Ajax,所以猜想会不会是因为Ajax超时导致,修改代码将返回状态弹出:

发现返回的status为”error“,也尝试过将timeout设置为一个较大值,发现问题依然存在,所以可以排除是JQuery Ajax超时;

3、使用fiddler2进行监控,发现执行一段时间后报了500错误显示错误详细信息如下图:

到了这一步就好办了,可以知道是httpRuntime超时了,配置Webconfig就可以了,如下图:

设置好好后发不到服务器,再次运行程序,问题解决

奇怪的是在本机运行的时候即使没有设置executionTimeout也不会出现问题,原因是在本机的Webconfig中的compilation节点的有个debug属性设置为true,发布后的Webconfig中的compilation没有debug节点,当debug属性为false时,httpRuntime的executionTimeout属性才会生效。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐