У меня довольно большое и сложное приложение winforms. Чтобы уменьшить время запуска, я предварительно сгенерировал сборки сериализации, используя следующий командный файл.
; delete any existing serialization assemblies
del *XmlSerializers.dll
; gen new serialization assemblies
for %%a in (*.dll) do sgen /assembly:%%a
; delete .deleted files (generated for assemblies which do not allow serialization)
del *.dll.deleted*
Однако, к моему удивлению, время запуска фактически увеличилось с 4.6 секунд до 6.1 секунд - прыжок 1,5 секунды. Это подтвердилось, было ли холодное начало или тепло.
Итак, вопросы:
- Почему мое приложение запускается медленнее с сборками сериализации?
- Есть ли способ увидеть через Perfmon или какой-либо другой инструмент, когда приложение генерирует сборки сериализации?
- Я генерирую сборку сериализации правильно?