Подвисания ТС при открытии каталога и/или прокручивания
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Программное обеспечение

#1: Подвисания ТС при открытии каталога и/или прокручивания Author: Skif_off PostPosted: Tue Feb 16, 2016 20:11
    —
По умолчанию использую подробный вид, после использования вида с WDX-плагинами или, например, настройки наборов колонок (ТС в этом случае загружает все плагины, чтобы прочитать доступные поля), появляются тормоза при открытии каталогов и прокручивании списка в панели.
Независимо от размера каталога и количества файлов/папок в нём. SSD/HDD - значения не имеет.

Дабы не копипастить, отсюда и ниже пытался сформулировать, мнение Dec:
Quote:
Нужно понимать, что авторы плагинов имеют разную квалификацию. И вполне возможно, что какой-нибудь маленький, но полезный плагинчик, написанный начинающим разработчиком, не освобождает захваченные ресурсы, не закрывает используемые хендлы, теряет GDI объекты, не освобождает интерфейсы и т.д. И все это приводит к тормозам.


Подскажите, пожалуйста, как можно найти этот плагин (или *.dll?)? Есть Process Hacker, дебаггер от NirSoft, x64dbg, могу посмотреть в API Monitor (если точно знать, что искать).

Пробовал искать, деля список WDX-плагинов пополам, - не получилось, попутно возникла мысль, что дело не в одном конкретном.

Список установленных плагов:
 Hidden text


Win7x64, TC 8.52a 32+64bit.

#2:  Author: AvadaLocation: Россия, Саратов PostPosted: Thu Feb 18, 2016 00:08
    —
Skif_off
А почему во Флейме?

#3:  Author: Skif_off PostPosted: Thu Feb 18, 2016 00:30
    —
Avada
Да честно говоря просто растерялся слегка: для раздела Программное обеспечение вроде как не очень подходит - речь о ТС всё-таки, но предполагаю, что без сторонних средств не обойтись, тогда вроде и Общие вопросы - не совсем. Флейм - это беспроигрышный вариант Smile В новых сообщениях видно, а если ошибся, то поправят. Только немного неудобно мониторить тут тему - приходится логиниться.

#4:  Author: CaptainFlintLocation: Москва PostPosted: Fri Feb 19, 2016 16:01
    —
Для начала можно прогнать через Process Monitor. Он покажет запросы к файлам, и можно будет проследить задержки в обработке. Для самых больших задержек можно посмотреть стек вызовов и по нему увидеть, какой плагин обратился к файлу.

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

По расположению темы: всё-таки ПО логичнее. Переношу туда.

#5:  Author: Skif_off PostPosted: Fri Feb 19, 2016 17:57
    —
CaptainFlint
Название темы получается лишком общим Smile, т.к. тормоза есть и только после того, как wdx-плагины будут просто загружены.

Надо было сразу уточнить, прошу прощения. Всегда включен подробный вид, переключаюсь на пользовательские наборы только при необходимости, выглядит всё так:

- подробный вид, из wdx-плагинов загружены только Autorun и TextLine + на Alt+Shift+Enter висит cm_CountDirContent,cm_LoadAllOnDemandFields, чтобы привычно работало с DirSizeCalc;
- открываю настройки пользовательских наборов;
- создаю новый набор, добавляю колонку, открываю список wdx-плагинов - ТС загружает _все_, чтобы прочитать доступные поля;
- пробегаюсь по списку;
- ничего не сохраняю, просто жму везде отмену и закрываю окно настройки;
- вид остаётся всё так же подробный, но навигация и прокручивание уже с заметными задержками, независимо от размеров и количества элементов (при этом ТС на SSD, навигация по SSD - задержки), в Process Hacker вижу всю пачку wdx-плагинов.

Т.е. вроде получается, что фактически wdx-плагины не использовались, просто были загружены для получения полей. Ну и при собственно использовании пользовательских наборов тоже вылезает, но точный алгоритм не уловил. Решается перезапуском ТС.

Смотрел дескрипторы ТС в Process Hacker - вроде аналогично обычному состоянию, попробую Process Monitor, спасибо.

#6:  Author: CaptainFlintLocation: Москва PostPosted: Fri Feb 19, 2016 18:23
    —
В таком случае хорошо бы сравнить поведение в том же ProcMon'е до и после такой принудительной загрузки плагинов, что меняется: добавляются ли новые обращения или просто обработка файлов начинает занимать больше времени.

Цветовые группы настроены? Что будет если отключить?

А постоянной нагрузки на процессор от Тотала, случайно, не появляется после загрузки плагинов? Может, какой-то плагин зацикливается в фоне и начинает тормозить весь процесс.

#7:  Author: Skif_off PostPosted: Fri Feb 19, 2016 18:56
    —
CaptainFlint
Цвета настроены, но без использования плагинов (расширения изображений, аудио, видео и скрытые файлы (только атрибуты), отключать не пробовал.

Загрузку проца ещё проверю: потоки в Process Hacker когда-то смотрел, но вроде не припоминаю ничего необычного.

#8:  Author: Skif_off PostPosted: Sat Feb 20, 2016 00:44
    —
CaptainFlint
Заметил, что после предпоследнего шага появляется ещё один поток со средним приоритетом:
Code:
GdiPlus.dll!GdipPlayTSClientRecord+0x15984

в логе ProcMon GdiPlus.dll появляется после загрузки Image.wdx64 и после загрузки следующего плага больше не используется.
Кусок лога с начала загрузки плага до загрузки следующего + в конце то, что было после нажатия кнопки закрытия ТС (закрытие потока и папки с GdiPlus.dll):
 Hidden text

Целиком при необходимости. Завтра постараюсь покопаться, попробую и Image выпилить.



Total Commander -> Программное обеспечение


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group