gpt4 book ai didi

asp.net - PreRenderComplete 和 SaveState 之间的时间滞后

转载 作者:行者123 更新时间:2023-12-02 11:15:22 26 4
gpt4 key购买 nike

我们正在跟踪 ASP.NET 应用程序,发现对于其中一个页面,从 PreRenderComplete 结束到 SaveState 开始有大约 2.5 秒的时间滞后。以下是部分日志

aspx.page结束预渲染9.123185387 0.184541

aspx.page开始PreRenderComplete 9.123277718 0.000092

aspx.page结束PreRenderComplete 9.123666575 0.000389

aspx.page 开始 SaveState 11.77441916 2.650753

aspx.page结束保存状态11.77457158 0.000152

aspx.page 开始 SaveStateComplete 11.77459695 0.000025

aspx.page结束SaveStateComplete 11.77461284 0.000016

aspx.page开始渲染11.77462541 0.000013

aspx.page结束渲染15.10157813 3.326953

我们正在试图了解这背后是否有任何理由。请帮助我理解这一点。

提前致谢

最佳答案

根据 Reflector,这两个事件之间发生的唯一事情是一些构建与跟踪输出一起使用的控制树的代码 (BuildPageProfileTree)。此代码仅在启用跟踪时运行。以下是该页面 ProcessRequestMain 例程的相关部分:

if (context.TraceIsEnabled)
{
this.Trace.Write("aspx.page", "End PreRenderComplete");
}
if (context.TraceIsEnabled)
{
this.BuildPageProfileTree(this.EnableViewState);
this.Trace.Write("aspx.page", "Begin SaveState");
}

因此,具有讽刺意味的是,您在上面看到的速度减慢是由于您正在跟踪页面而导致的,如果禁用跟踪,则不会出现这种情况。

关于asp.net - PreRenderComplete 和 SaveState 之间的时间滞后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3416060/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com