我有以下问题。
在一个请求中我正在更新会话变量。 在另一个请求中,我试图访问该会话值,但它被阻止,直到第一个请求完成。
我在ASP.NET 2.0中使用C#
更新:
我的网页代码如下所示。
while(int progress = DoWork() && progress <= 100 ){
Session["Progress"] = progress;
}
我的处理程序只返回Session值。
context.Response.Write(Session["progress"].toString());
context.Response.End();
答案 0 :(得分:1)
由于应用程序的开发方式,您确实不应该使用ASP.net运行并发调用。这听起来像一个普通的锁定机制,你唯一能做的就是满足一个锁,只需保持线程等待直到另一个线程完成。
如果可能发布一些代码同时运行多个线程,可能有更好的方法。