Правильного ответа нет. Любой выбор приводит к жертвам, любое решение требует платы. | Лишь навык имеет значение.
Хао.
Есть WinXP, есть ntfs-раздел. На этом разделе есть папки с большим количеством файлов (17к-60к), преимущественно - изображений.
Пока просто по разделу ходишь, всё вроде бы ок.
Но когда заходишь в папку с большим количеством файлов, происходит подвисание окна (всё остальное работает) на 5-6 секунд.
И это подвисание происходит каждый раз при открытии или обновлении папки.
И это, кстати, при отображении в виде списка. Ибо превьюшками, думаю вообще плохо будет.
Пробовал ходить через Far - та же фигня. Может на 1-2 секунды меньше, но всё равно пауза.
Собсно вопрос - с этим можно что-то сделать? Чтобы не было при каждом чихе паузы пока всё это множество картинок обработается и отобразится.
Поменять систему на 7-ку не предлагать.)
Есть WinXP, есть ntfs-раздел. На этом разделе есть папки с большим количеством файлов (17к-60к), преимущественно - изображений.
Пока просто по разделу ходишь, всё вроде бы ок.
Но когда заходишь в папку с большим количеством файлов, происходит подвисание окна (всё остальное работает) на 5-6 секунд.
И это подвисание происходит каждый раз при открытии или обновлении папки.
И это, кстати, при отображении в виде списка. Ибо превьюшками, думаю вообще плохо будет.
Пробовал ходить через Far - та же фигня. Может на 1-2 секунды меньше, но всё равно пауза.
Собсно вопрос - с этим можно что-то сделать? Чтобы не было при каждом чихе паузы пока всё это множество картинок обработается и отобразится.
Поменять систему на 7-ку не предлагать.)
ссд поставить, и то не факт, что поможет.
По умолчанию у каждого файла и папки на NTFS-разделе имеется атрибут Время последнего обращения, который хранит информацию о том, когда в последний раз файл (или папка) был открыт, прочитан или изменен. Это означает, что даже когда вы читаете файл с NTFS-раздела, на нем параллельно происходит и запись. В большинстве случаев это не является проблемой, но если вы пользуетесь приложениями, часто открывающими файлы на короткие промежутки времени, эта особенность NTFS может сильно понизить общую производительность. К счастью, можно использовать fsutil для отключения обновления данного параметра:
fsutil behavior set disablelastaccess 1
После запуска этой команды Время последнего обращения для вновь созданных файлов будет равно просто-напросто времени их создания. Необходимо отметить, однако, что запрет обновления данного параметра может негативно повлиять на работу программ по резервному копированию данных, использующих службу удаленного хранения (Remote Storage service).
Ясно.(
Ржавый Филин, можно использовать другой файловый менеджер, не Windows Explorer.
См. выше. Пробовал использовать Far Manager. Особого снижения паузы не замечено. Может на 1-2 секунды пауза меньше, но всё равно ждать приходится.
fire-dragon, fsutil behavior set disablelastaccess 1
Так ещё хуже.
В обычном случае, ждёшь 4-5 секунд и отображатеся список файлов. При этом, визуально, ты на предыдущем уровне каталога.
С этим же параметром, визуально ты уже в папке, но крутится иконка "фонарик" (типа файлы ищет) и пауза перед отображением становится уже секунд 10.
То бишь, почти в два раза медленнее получается.(
-----------------------------------------------------------------------------------
В общем, как я понял, системно это не решается. Ясно. Спасибо за помощь.
Видимо придётся писать свой менеджер картинок, который не будет обновлять список файлов при каждом чихе.)
Например - один раз провести сканирование и дальше работать просто с текстовым списком.
При обращении к файлу (удаление или перенос) строка "Имя файла" совмещается с строкой "Путь к файлу" и происходит доступ с последующим действием.
При этом, т.к. обрабатываемый файл убирается из начальной папки, то не сканировать её заново, а просто удалять строку из текстового файлика, который после сканирования создался.
Теоретически, это даст лучшее быстродействие и не будет задержек, т.к. сканирование будет производиться один раз.
Из минусов... если добавить новые файлы в папку не через этот менеджер картинок, то в нём они не отобразятся пока не повторишь сканирование вручную.
С другой стороны, можно повесить отдельный поток для слежения за папкой. Если изменения файлов будут производится не менеджером картинок, то в него будет посылаться сигнал об изменении. И, либо это вызовет повторное сканирование чтобы отображать актуальное состояние, либо можно передавать не просто сигнал об изменении, но и сами изменения. Тогда не будет необходимости сканировать заново всё, а просто изменения внесутся в текущий "дамп" - список файлов.
Надо будет попробовать. Теоретически, при работе с 60к файлов и максимальной длиной имени файла в 256 символов, файл после сканирования будет весить около 14-15 Мб. Что, учитывая количество картинок (60к) не так уж и много. И, как мне кажется, работать с одним файлом в 15 Мб гораздо быстрее, чем с 60к файлов рандомного размера. И файловую систему не будем дёргать лишний раз.
Ладно, надо будет сообразить как-нить. Просто хотел знать, можно ли без самописчины решить вопрос. Видимо нельзя.
Я тоже так думал. Нифига подобного. Та же Picassa при заходе в папку виснет ещё сильнее, чем explorer.
Как и FastStone. Сейчас остановился на XnView. Он тоже подвисает, но хотя бы чуть меньше, чем explorer. Не сильно, но хоть что-то.
Ржавый Филин, А вот фиг его, какие они. Там набросано овердофига всего и это надо разбирать и сортировать по папочкам.
Если хотите воспроизвести проблему, выкачайте где-нить на трекере архив картинок или текстурок каких. Чтобы было хотя бы 20к.
Распакуйте в папочку и смотрите как оно у вас.)
В моём случае, картинки пишутся серверной утилиткой (знать бы ещё, зачем столько), которая вытягивает их откуда-то ещё и складирует в папки.
Попробуйте ее, кстати. Не знаю, какая у вас задача, но может подойдет?
Открывается мгновенно во всем, включая "с созданием thumbnails". Похоже что это очень жестко завязано на производительность жесткого диска.
У вас оперативки много?
Спасибо, гляну.
У вас оперативки много?
3 Гб. Core 2 Duo E7200, харды - samsung и toshiba по 7200 оборотов каждый, sata'вские.
Проблема не в поиске. Проблема в паузах при открытии папки с большим количеством файлов.
Поиск-то, даже если много файлов, нормально идёт.
Total Commander 8.01 - 11 секунд
Windows Explorer - 2 секунды (thumbnails on, индекс создан)
Directory Opus 11.10 (x64) - 4 секунды, список.
Far 3.0.4242, x64 - 9 секунд
Cubic Explorer - 3 секунды
Explorer++ x64 - 19 секунд
Just Manager 0.32 - 1 секунда
A42 File Manager - больше минуты, вырубил
Q-Dir (x64) - 2 секунды (кажется, он процесс explorer использует)
MultiCommander 3.5 x64 - сразу
ViewFD 3.3.9.0 - 1 секунда
Nomad.NET 3.0.5 beta - 5 секунд
Tablacus 13.1.1 (x64) - сразу
пополз смотреть пару новых названий.
мультикомандер понравился, удобный и быстрый.
Сейчас даже не знаю, что из этого продолжает развиваться, помимо широкоизвестных брендов.
UPD: Midnight Commander for Windows - 19 секунд.
мультикомандер последний раз обновился 1 февраля, свободно скачивается с офф сайта.
Tablacus, кстати, подвисает тоже. А порой выкидывает на уровень в верх.
И конфигурё системы тоже.
Видимо у вас хард быстрый.) Ибо у меня 4-5 секунд, ХР'шным эксплорером.
Windows XP Professional, SP3. То бишь, архитектура x86.
Core 2 Duo E7200 2.52 GHz, 3 Гб DDR2 Kingston.
Хард, на котором всё лежит - www.ulmart.ru/goods/370077
Вроде всё.)
Ещё бы научить его нормально превью картинок показывать. Потому что он отображает эскизами, как система. А эскизы мааааленькие.
Было бы удобно, в одной колонке список папок, в другой - больше превью картинок. И тогда перетаскивай себе спокойно куда надо.
Но скорость работы радует.)
Да понял уже.)))
Надо будет проверить, как он файлы пишет - как система или по-своему?
А то у меня плеер сортировать по имени не умеет и воспроизводит в порядке записи.
Поэтому приходится музыку через Far закидывать - он пишет по очереди в алфавитном порядке.
Но если Just тоже по очереди пишет, то можно будет Far убрать и отставить Just.)
Там, где даже виндовый просмотрщик картинок отображет всё корректно, на предпросмотре в Мульти появляются дикие ступеньки и углы.(
ViewFD, несмотря на всю свою нагромождённость, умеет предпросмотр. И даже умеет сглаживание.
Правда на предпросмотре всё растягивает до размеров вкладки, что не есть гуд. Возможно где-то настраивается, но пока не нашёл где ибо настроек и панелек овердофига.)))
Но вот что меня вообще убило - он не умеет Drag & Drop в пределах одной вкладки. оО
Вот перетащить с вкладки на вкладку - эт пожалуйста. А в пределах одной вкладки перетащить файл на папку, чтобы туда переместить - эт не, не умеем.
+ Ко всем окнам в системе сверху добавляет свою панельку. Пока ещё не нашёл, где это убирается.