本帖最后由 tiankangyan 于 2013-06-07 08:58:02 编辑

解决方案 »

  1.   

    ajax基本现在都是异步的吧,为什么还要单开线程呢
      

  2.   


    如果不另开线程,action中一直等待接收数据的话会不会很卡? 我现在去试下看吧
      

  3.   


    谢谢你的回答,时间确实没办法,因为是读的实时数据,也没办法缓存什么的。
    第二种方法,我是不是可以理解成js另开一个线程去等待?这个我也考虑过了,这里还有问题,就是如果不开线程去等待数据,则action响应期间会很卡;如果另开了线程,则没办法主动响应到JSP 
      

  4.   


    谢谢你的回答,时间确实没办法,因为是读的实时数据,也没办法缓存什么的。
    第二种方法,我是不是可以理解成js另开一个线程去等待?这个我也考虑过了,这里还有问题,就是如果不开线程去等待数据,则action响应期间会很卡;如果另开了线程,则没办法主动响应到JSP 获取实时数据就用comet4j
      

  5.   

    comet4j没用过,不过看起来比较靠谱,不过估计通信资源占用会比较严重。
    如果是有限次数的相应的话,用容器管理一下线程处理的数据,在页面加载之后js异步请求相应的数据从容器中拿出来。
    html5的websocket可以主动推送。
      

  6.   

    客户端用AJAX异步没有错,服务端在SERVLET中,(你用的STRUTS2也可以,在ACTION页面中),开一个线程,往线程里传参,参数就为request,然后在这个线程里把数据处理好,并用request.write写入流中就可以了