分析 Silverlight 4
Posted
技术标签:
【中文标题】分析 Silverlight 4【英文标题】:Profiling Silverlight 4 【发布时间】:2011-09-05 16:54:16 【问题描述】:我有一个 Silverlight 页面,它在 ScrollViewer
中显示 100 多个用户控件(大约 50% 的控件同时可见,具体取决于浏览器分辨率)。
当我使用 ScrollViewer 滚动时,滚动速度很慢,我的 4 个 CPU 内核中的一个达到 100%(只要我继续移动滚动条就一直保持在那里)。
我想根据MSDN Blog 上的说明对应用程序进行分析,以便更好地了解时间花在了哪些地方。像其中一位评论者一样,我得到了错误
没有可用的调用树数据。
当我打开 .vsp 文件时。
我使用这个批处理文件运行我的分析会话:
call vsperfclrenv /sampleon
set CORECLR_ENABLE_PROFILING=1
set CORECLR_PROFILER=%COR_PROFILER%
call vsperfcmd /start:sample /output:myProfile.vsp
call vsperfcmd /launch:"c:\Program Files (x86)\Internet Explorer\iexplore.exe" /timer:100000
echo Browse to http://localhost:9567/MyTestPage.aspx#/Home
call vsperfcmd /shutdown
Echo Before viewing, turn on the symbols server in VS2010 through: Tools-->Options-->Debugging-->Symbols-->check microsoft symbols server.
Echo Open .vsp file in VS2010
一位博客评论员认为问题是由于 64 位版本的 vsperfcmd 造成的。当我运行 Windows 7 64 位时,vsperfcmd 表明它是 x86 版本:
vsperfcmd
Microsoft (R) VSPerf 命令版本 10.0.40219 x86
我在分析我的用户代码时缺少什么?
【问题讨论】:
您是否检查过 CLR 已加载分析器 - 它应该在应用程序事件日志中添加一个条目; CLR2/4 运行时对普通 .NET 应用程序执行此操作,因此我假设它对 Silverlight 执行相同操作。 【参考方案1】:您是否尝试过在管理员控制台窗口中运行它 - 我最近注意到我无法配置(代码覆盖率)silverlight 应用程序,除非我在管理员帐户下运行,即使用“以管理员身份运行”启动控制台窗口
【讨论】:
以上是关于分析 Silverlight 4的主要内容,如果未能解决你的问题,请参考以下文章