有一个页面执行一个更新任务,比较耗时,每次执行都超时
怎么设置让单个页面可以执行更长时间?谢谢!
环境:ASP.NET C#

解决方案 »

  1.   

    作为一个web“质量”标准,我建议你设计每一个页面时要求其计算时间不要超过10秒钟(一般来说不要超过3秒钟)。如果超过,很简单,你的操作应该是异步的!也就是开始一个异步线程计算,不要等待其结束,页面就应该返回。
      

  2.   

    用AJAX 了吗? 怎么会一两分钟就超时了?
      

  3.   

    我现在的配置: 非AJAX页面,web.config里面:
    <httpRuntime executionTimeout="6000" maxRequestLength="204800"/>
    AJAX页面:
    <asp:ScriptManager ID="sm1" runat="server" EnableScriptGlobalization="true" EnableScriptLocalization="true"
            AsyncPostBackTimeout="6000">
      

  4.   

    有thread类。
     至于高级用法我就不懂了。
      

  5.   


    你已经将同步处理程序写完了!你的同步处理已经大大“hang”了服务器,就不要再想什么办法让客户端更加“死死地”拖住服务器。
      

  6.   

    如果我是你的pm,这里其实很清楚,不论你的同步程序如何写,你都无法“完成任务”,因为我会很清楚地给你说明:要求3秒钟内页面处理过程必须结束(必须执行到页面的Render阶段)这个含义。
      

  7.   

    建议使用多线程、或者 ajax来实现,主要是先保证页面能够正常访问,需要等待那么长的时间我想再漂亮的网站或功能很强大根本不会有人去欣赏
      

  8.   

    后台维护页面,对于多线程,ajax知道不多,希望提供一些简单例子的参考网址
      

  9.   


    受你这里的描述的启发,对于“几百个文件处理”,我刚刚发了的一个介绍.net技术的帖子《我们写的程序真正用到多核了结构的能量了吗?》。不过,就算你把处理时间从200秒缩减到100秒,所花费的时间也是太长了,也是应该改为异步操作的。