繁体   English   中英

dotTrace在PipelineRuntime.ProcessRequestNotification中显示了很多时间未说明的信息

[英]dotTrace Shows Lots of Unaccounted for Time in PipelineRuntime.ProcessRequestNotification

我正在使用dotTrace来分析用C#编写并在IIS服务器上运行的WCF .Net Web应用程序。 一项显示在PipelineRuntime.ProcessRequestNotification中花费了7.77秒,带有以下子进程

  • 在MyMethod中为0.03秒
    • HttpRequest.GetHeaders中的0.016秒
  • [不安全堆垛行走]中的0.2秒

剩下超过7秒的时间完全无法解释。 有谁知道错过的时间会流向何方? 那段时间MyMethod中的某些东西可能会吃光,但是dotTrace只是报告不正确?

在这种情况下,未说明的时间是PipelineRuntime.ProcessRequestNotification自己的时间。 这意味着该特定功能的代码以及所有由JIT函数内联的代码耗时约7秒钟。

如果我们假设这一点,但不应花费太多,就必须调查原因。 有两种可能-此函数被调用太多次(Tracing性能分析类型将有助于检查),或者该功能中的某些指令很慢(Line-by-Line性能分析类型将帮助您分析内部的相对指令时间)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM