• 下一个ajax异步请求被挂起问题


    异步请求按理来说应该是会不受其它ajax请求影响的,但如果是服务端访问了Session就不能这么说了。

     了解了asp.net的会话管理,那我们来看看今天要谈到的主题:

    IReadOnlySessionState,IHttpSessionState,IRequiresSessionState

      IHttpSessionState 定义协定以实现自定义会话状态容器。
      IReadOnlySessionState 指定目标 HTTP 处理程序只需要具有对会话状态值的读访问权限。这是一个标记接口,没有任何方法。
      IRequiresSessionState 指定目标 HTTP 处理程序需要对会话状态值具有读写访问权。这是一个标记接口,没有任何方法。

     对,没错。如果你ashx程序或者服务端程序继承接口IRequiresSessionState这就会造成了服务端sessionState不会被释放的问题。

    1.Session 是读和写是有区分的

    2.写Session以独占的方式进行

    3.当读Session 遇到写Session时,读Session是要被阻塞的。

    4.读和读之间是不会被阻塞的 。

    所以当你只是读session时候,继承接口改成IReadOnlySessionState即可。这样就不会造成下一个异步的ajax请求被挂起了。

    该问题是有服务端会话冲突引起,其实该问题不只是.net会出现的问题,像Java ,PHP这样的服务端语言也会有这样的问题,只是解决方式略有不同。

  • 相关阅读:
    tp.c
    trace
    一致性哈希算法
    update_dctcp_alpha
    dctcp-ns2-patch
    C++ inheritance: public, private. protected ZZ
    C++ virtual inheritance ZZ
    C++ 类对象的初始化顺序 ZZ
    C++ inheritance examples
    classifier.cc-recv() [ns2.35]
  • 原文地址:https://www.cnblogs.com/hxzblog/p/8674698.html
Copyright © 2020-2023  润新知