ASP.net session request queuing -
it seems me asp.net queues requests use same session id. let's you've got 3 pages.
default.aspx
protected void page_load(object sender, eventargs e) { session["asdf"] = "lolz"; }
hitting page create new session if 1 doesn't exist.
x-aspnet-version: 2.0.50727 set-cookie: asp.net_sessionid=ibjphuv0aiafqi453tyze345; path=/; httponly
then hit hang.aspx
protected void page_load(object sender, eventargs e) { thread.sleep(10000); }
and after hit other page session id passed to, doesn't matter if anything, let's call test.aspx.
the sequence loading so.
request timeline "get /" |*| "get /hang.aspx" |******************************************| "get /test.aspx" |**************************************|
i guess question how disable feature. understand it's useful have session state can more predictable, in case long running reports page load killing users' ability multitask.
this behaviour design; no concurrent access session state allowed. requests same sessionid locked exclusively prevent potential corruption of state.
to around can disable session state in page directive.
<%@ page enablesessionstate="false" %>
read "concurrent requests , session state" here http://msdn.microsoft.com/en-us/library/ms178581.aspx more.
setting enablesessionstate="readonly"
prevent page gaining exclusive lock on sessionstate (but page have wait other non-readonly requests user finish before loading).
(this copy , paste of answer question asp.net site: long-loading page user puts other page loads user on hold)
Comments
Post a Comment