23

При копировании большого количества файлов за один раз Windows требуется достаточно времени для подготовки копии? То же самое происходит при удалении большого количества файлов. Что здесь происходит? Какие приготовления там идут?

5 ответов5

7

Он создает список всех файлов в текущей папке и ее подпапках и регистрирует изменения, которые будут внесены в файлы в журнале. Это необходимо из-за того, как работает NTFS.

Некоторые варианты использования этого списка включают в себя:

  • обновление файловой системы
  • поддержание согласованности файлов в случае сбоя
  • зная количество файлов, чтобы вы могли вычислить, сколько времени осталось до завершения операции, какой процент операции был выполнен до настоящего времени и соответственно нарисовать индикатор выполнения.
  • предоставление пользователю возможности повторить или прервать операцию (будь то копирование, перемещение, удаление) в случае сбоя некоторых файлов.

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

5

"Подготовка к копированию" - это специальная функция, которая позволяет отложить весь процесс на неоправданное количество времени и дает вам больше времени, чтобы оценить необычное диалоговое окно, созданное дизайнерами Microsoft.

В то время как Windows "готовится к копированию" это не так

  • Проверьте, возможно ли заблокированные файлы (по очевидным причинам они будут обнаружены только в процессе копирования)
  • Внесите любые изменения в свою файловую систему (также обратите внимание, что фактическая файловая система здесь не является фактором, поведение такое же для NTFS / FAT32)

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

1

Как ответил Раймонд Чен в одном из ответов на свое первоначальное диалоговое сообщение о ходе копирования файла (http://blogs.msdn.com/b/oldnewthing/archive/2004/01/06/47937.aspx#47964), один из все, что он делает, это получает размеры файлов для всей операции копирования, чтобы лучше угадать, сколько времени займет копирование.

0

Я полагаю, что эта необычная особенность заключается в том, чтобы вычислять процент выполнения индикатора при копировании каждого файла, чтобы вы могли оценить прекрасный индикатор выполнения.

-1

Насколько мне известно, Windows проверяет, что она может делать то, что вы просите для всех файлов. Это означает, что, например, заблокированные файлы обнаруживаются заранее, а не наполовину, что приводит к неполному результату.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .