У меня есть страница Silverlight, на которой отображается 100+ пользовательских элементов управления в ScrollViewer
(около 50% элементов управления видны одновременно, в зависимости от разрешения браузера).
Когда я выполняю прокрутку с помощью ScrollViewer, прокрутка идет медленно, и одно из моих четырех процессорных ядер достигает 100% (и остается там до тех пор, пока я продолжаю перемещать полосу прокрутки).
Я хотел профилировать приложение, чтобы лучше понять, на что тратится время, следуя инструкциям в этом блоге MSDN . Как один из комментаторов, я получаю ошибку
Данные дерева вызовов недоступны.
когда я открываю файл .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. В то время как я использую 64-разрядную версию Windows 7, vsperfcmd предполагает, что это сборка x86:
vsperfcmd
Microsoft (R) VSPerf Command Version 10.0.40219 x86
Что мне не хватает в профиле моего кода пользователя?