Ускорение развертывания в Visual Studio - PullRequest
2 голосов
/ 20 декабря 2009

Я создаю приложение для мобильных устройств Windows, которое работает с базой данных, состоящей примерно из 1500 файлов. Однако размер каждого файла составляет менее 50 КБ, а общий размер - менее 15 МБ.

Когда Visual Studio развертывает приложение на мобильном устройстве, это занимает от 25 до 30 минут. Мне было интересно, есть ли способ ускорить процесс. Я предполагаю, что большое количество файлов - это то, что замедляет его, но, поскольку я включил опцию «Копировать только если новее» для каждого файла, я действительно не вижу, как я мог изменить что-то еще. Кроме того, самая длинная стадия кажется "Развертывание началось ..."

Есть идеи, как мне улучшить общую производительность?

Ответы [ 2 ]

1 голос
/ 22 декабря 2009

Основная проблема в том, что драйвер файловой системы на всех устройствах WM. По сути, драйвер файловой системы не обрабатывает создание множества записей каталога в одном каталоге. Время входа в каталог 'create' увеличивается с каждым файлом, который вы создаете в одном каталоге, когда вы получаете до тысячи файлов, время создания может занять часы.

Я видел это много раз при резервном копировании устройств с папкой почтовых сообщений, где у кого-то есть более 7000 файлов электронной почты (созданных за длительный период времени). Резервное копирование выполняется быстро, но восстановление может занять несколько дней из-за этой проблемы.

Чтобы избежать этого, попытайтесь ограничить количество файлов в одной папке, разделив их по нескольким папкам, что в сочетании с ручным копированием файлов, как предполагает Вадмист, должно ускорить вас.

0 голосов
/ 21 декабря 2009

При запуске вы можете отключить опцию проверки последней версии .NET CF framework (Параметры проекта -> Устройства -> Развернуть последнюю версию ... (флажок).

Если это не поможет, вы можете создать скрипт загрузки двоичных файлов, который будет просто копировать файлы (xcopy ...) на целевое устройство.

...