当滞后超出所调用的方法时,如何对 C# WinUI3 项目进行分析?

问题描述 投票:0回答:1

我遇到一个问题,某些代码需要很长时间才能完成,因此我尝试分析 CPU 使用情况,并且包含滞后的图形区域绝对没有方法可以显示。在整个会话中,进程的 main 方法是唯一列出的方法,并且占用的时间不到 25%,因此在 main 方法之外存在某种滞后。我的目标是找出导致这种滞后的原因。

我放大了探查器,看起来这个方法在某些地方停滞了,因为它是长时间停滞之前调用的最后一个方法。

 ABI.Microsoft.UI.Xaml.IApplicationStaticsMethods.Start(WinRT.IObjectReference, Microsoft.UI.Xaml.ApplicationInitializationCallback)
c# profiling lag winui-3
1个回答
0
投票

由于它正在等待主线程之外的东西,可能是I/O,所以CPU时间当然可以忽略不计。您需要分析挂钟时间,而不是CPU时间,并且您需要查看所有线程,看看哪个线程正在等待哪个线程。看这里

© www.soinside.com 2019 - 2024. All rights reserved.