日期:2014-05-17  浏览次数:20624 次

asp.net判断耗时较长的方法是否执行完毕
需求如下:A方法需要执行一些耗时较长的任务,比如采集、生成页面等。当点击页面上的“执行”按钮后,在后台开启一个线程去执行A方法,因为耗时较长,用户可能关闭页面去做其他事情。然后过一段时间后,用户再打开页面,再点击“执行”的时候,怎么判断上一次的任务是否执行完毕,如果上一次任务执行完毕,则正常执行A方法,如果未执行完毕,则返回信息让用户选择取消执行或继续等待执行完毕后执行。
不要用检测结果是否存在的方法去判断是否执行完毕

------解决方案--------------------
执行时候,插入一条记录,未成功标志为0,执行成功后标识为1

查询一下,就知道有没有执行成功了
------解决方案--------------------
可以通过回调函数(类似事件),当执行完后,会触发一个回调,里面可以设置一些变量,下一次执行时,先判断这些变量,来确定是否执行,jquery也有回调
------解决方案--------------------
探讨

执行时候,插入一条记录,未成功标志为0,执行成功后标识为1

查询一下,就知道有没有执行成功了