ASP.netは、同じセッションIDを使用するすべての要求をキューに入れているように見えます。3ページあるとしましょう。
Default.aspx
protected void Page_Load(object sender, EventArgs e)
{
Session["asdf"] = "LOLZ";
}
このページを押すと、セッションが存在しない場合は明らかに新しいセッションが作成されます。
X-AspNet-Version: 2.0.50727
Set-Cookie: ASP.NET_SessionId=ibjphuv0aiafqi453tyze345; path=/; HttpOnly
次に、Hang.aspxを押します
protected void Page_Load(object sender, EventArgs e)
{
Thread.Sleep(10000);
}
そして、このセッションIDが渡される他のページにアクセスした直後に、それが何かを実行するかどうかは関係ありません。それをTest.aspxと呼びましょう。
ロードのシーケンスはそのようなものです。
Request Timeline
"GET /" |*|
"GET /Hang.aspx" |******************************************|
"GET /Test.aspx" |**************************************|
私の質問は、この機能を無効にするにはどうすればよいかということだと思います。セッションの状態をより予測できるようにするのが便利だと理解していますが、私の場合、レポートページの読み込みが長時間続くと、ユーザーのマルチタスク機能が失われます。