Я использую.NET 4,0 клиентских профиля для моего приложения, и я выполняю двухъядерное с 4 ГБ Ram и быстрый жесткий диск.
ничто большое не сделано в запуске, просто показывающем универсальный Список в wpf listview.
Как я могу сделать "холодный" запуск быстрее моего блока?
Я сделал теперь снова "холодный" запуск и выполнил windowsapplication.exe в моей \obj\x86\Debug папке и моем жестком диске, выполненном как ад, и потребовалось 10,5 секунд???
Что не так?
Горячий запуск после холодного занял 1 секунду.
Java 6 приложений не имеет той проблемы, нисколько только для сравнения...
ОБНОВЛЕНИЕ:
Я удаляю все методы, которые считывают данные, когда мои ViewModels создаются.
Все еще 10 секунд для разоблачения. Не проблема чтения данных с RAM. Проблемой является в большой степени занятый жесткий диск, который никогда не был настолько громким кроме выполнения .net 4.0 wpf приложение...
Я не ссылаюсь ни на какой сторонний dll's.
Это блоки, на которые я ссылаюсь:
Microsoft. Презентация до-диеза. Базовая системная система PresentationFramework. Базовая система. Система передачи и обработки данных. Xaml система System.Xml. Xml. Морской налим WindowsBase
ОБНОВЛЕНИЕ 2:
Я создал теперь.NET 4,0 wpf проекта с нуля только с пустым окном и зеленым фоном;-)
"Холодный" запуск занял 3 секунды (Жесткий диск стал очень занятым),
затем я запускаю свое другое wpf приложение, которое заняло более ранние 10 секунд. Теперь требуется только 1,5 секунды для разоблачения на экране.
Ситуация теперь ясна мне:
Мое приложение как ничто, что могло заставить его замедлиться. Примерно ПЕРВОЕ wpf загруженное приложение или нет.
Я думаю, что сделаю это как ADOBE Reader. Поместите акселератор приложения... в автоматический запуск, являющийся маленьким привет мир wpf приложение...
Вы можете использовать ngen для предварительной компиляции ваших сборок. Это должно помочь.
Редактировать: Может быть одна вещь, которая может помочь. Если это приложение wpf, основанное на шаблоне «новое приложение wpf» в Visual Studio, ваше приложение будет ссылаться на набор сборок, которые вы не можете использовать. Попробуйте удалить все неиспользуемые сборки из ссылок на приложения и посмотрите, поможет ли это.
Это ненормально, вы подключаетесь к базе данных или к какой-либо сети? Ждете какого-то ресурса ОС?
Возможно, вы захотите взглянуть на это сообщение в блоге MSDN Джосефа Голдберга.
.Net-приложения запускаются медленно по сравнению с приложениями, скомпилированными в собственном коде, но это звучит чрезмерно. Procmon может дать некоторое представление о том, чего он ждет.