2011-02-09 4 views
4

В моем приложении L4 для L4 я, вероятно, ударил F5 1000x и более без проблем. Внезапно, теперь поражение F5 может занять до 90 секунд до того, как будет запущено событие запуска.Запуск сеанса отладки в Silverlight занимает очень много времени

Я пробовал очистить кеш браузера IE, без помощи.

Я создал новое навигационное приложение без какого-либо кода, ударил F5, сразу начал, отлично. Затем я начал добавлять те же ссылки на сборку из моего приложения SL4 LOB в недавно созданное навигационное приложение. После каждой добавленной ссылки я бы ударил F5, чтобы приложение сразу же запускалось; Все идет нормально.

Увы, я, наконец, пришел к файлу System.Windows.Controls.Data.Toolkit.dll, который вызвал то же поведение с моим оригинальным приложением SL4 LOB. Я удалил ссылку из навигационного приложения, и снова он сразу же запустится. Это всего лишь 33kb, поэтому я не могу утверждать, что у меня проблемы с кешем символов.

Кто-нибудь еще видел это странное поведение? Любое понимание будет оценено по достоинству.

ответ

1

Небольшой размер вашего приложения не имеет особого значения для быстрого запуска ваших сеансов отладки. Замедление будет вызвано большим количеством зависимостей в вашем приложении.

Вы удалили единственную ссылку, которая улучшила ситуацию, и, возможно, эта единственная DLL, вероятно, зависит от множества других библиотек. Если вы проверите процесс с помощью инструмента, такого как Process Explorer, вы можете точно увидеть, какие библиотеки загружаются во время выполнения.

Эти посторонние зависимости довольно распространены. Мастера проекта, которые вы используете в Visual Studio, почти всегда будут добавлять зависимости к элементам, которые ваше конечное приложение не будет использовать. Например, ссылка XML всегда является частью вашего проекта по умолчанию, но не всегда нужно использовать XML. Это хорошая практика, чтобы пройти и удалить эти ненужные зависимости после первоначального создания вашего проекта. Вы всегда можете вернуться и повторно ссылаться на них в будущем, если вам нужно.

Смежные вопросы