我正在使用dotTrace Performance 4.5來分析.NET 3.5 C#Web應用程序。當我記錄一個「用戶請求」(頁面加載)時,我看到11個線程的時間大約相同,爲7644毫秒。C#Web應用程序優化:PerformWaitCallback
- 大多數線程描述只包含: 100%[本地或優化的代碼 - 7644毫秒
- 一個人說: 100%
Microsoft.VisualStudio.WebServer.WebServerApp.Main(String[])
- 最後一曰:
- 86%
System.Threading._ThreadPoolWaitCallback.PerformWaitCallback(Object)
- 14%
PerformWaitCallback
(1094ms)>> 12%=ProcessRequest
- 86%
你能告訴我:
- 爲什麼有這麼多線程? (圖片資源,AJAX,JavaScript)
- 什麼是
PerformWaitCallback
? - 爲什麼7644毫秒只有1094毫秒的工作?
你只測量一個*請求嗎?你應該啓動應用程序並運行*多個*請求;啓動Web應用程序涉及固有的開銷。 – casperOne
我在分析一個請求之前「加熱」應用程序。如果我運行多個請求(N x 8秒),我會得到類似的結果。 –
可能取決於您使用的是IIS,IIS Express還是Web Development Server。 –