ASP.NETMVCとIISバージョン7.5を使用しています。
コントローラーで次のアクションを実行します。
public ActionResult Wait(int time = 10000)
{
var start = DateTime.Now;
Thread.Sleep(time);
var end = DateTime.Now;
var diff = (end - start);
return Json(new {
start = start.ToString("yyyy-MM-dd HH:mm:ss.fff"),
end = end.ToString("yyyy-MM-dd HH:mm:ss.fff"),
milliseconds = diff.TotalMilliseconds.ToString("#,###"),
}, JsonRequestBehavior.AllowGet);
}
私が訪問した場合:/ wait?time = 10000
次に:/ wait?time = 10
2番目のリクエストは、最初のリクエストが終了するまで実行されません。
これは通常の動作ですか、それとも各リクエストを独自のスレッドで実行する必要がありますか?
これをコンテキストに当てはめると、このアプリケーションでは、さまざまな呼び出しでさまざまなサーバーからのデータを要求する必要があります。1つの複雑な要求が完了するのを待ってから、いくつかの単純な要求(ローカルデータのみを必要とする)を実行する必要はありません。
編集
同じユーザー(同じセッション)からのリクエストについて話していることに気づきました。ぼんやりしているだけだと思いますが、誰かが助けてくれるかもしれません。