Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Подвисания ТС при открытии каталога и/или прокручивания

 
Post new topic   Reply to topic    Total Commander Forum Index -> Программное обеспечение printer-friendly view
View previous topic :: View next topic  
Author Message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Tue Feb 16, 2016 20:11    Post subject: Подвисания ТС при открытии каталога и/или прокручивания Reply with quote

По умолчанию использую подробный вид, после использования вида с WDX-плагинами или, например, настройки наборов колонок (ТС в этом случае загружает все плагины, чтобы прочитать доступные поля), появляются тормоза при открытии каталогов и прокручивании списка в панели.
Независимо от размера каталога и количества файлов/папок в нём. SSD/HDD - значения не имеет.

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


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

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

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


Win7x64, TC 8.52a 32+64bit.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10235
Location: Россия, Саратов

Post (Separately) Posted: Thu Feb 18, 2016 00:08    Post subject: Reply with quote

Skif_off
А почему во Флейме?
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Thu Feb 18, 2016 00:30    Post subject: Reply with quote

Avada
Да честно говоря просто растерялся слегка: для раздела Программное обеспечение вроде как не очень подходит - речь о ТС всё-таки, но предполагаю, что без сторонних средств не обойтись, тогда вроде и Общие вопросы - не совсем. Флейм - это беспроигрышный вариант Smile В новых сообщениях видно, а если ошибся, то поправят. Только немного неудобно мониторить тут тему - приходится логиниться.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6151
Location: Москва

Post (Separately) Posted: Fri Feb 19, 2016 16:01    Post subject: Reply with quote

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

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

По расположению темы: всё-таки ПО логичнее. Переношу туда.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Fri Feb 19, 2016 17:57    Post subject: Reply with quote

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, спасибо.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6151
Location: Москва

Post (Separately) Posted: Fri Feb 19, 2016 18:23    Post subject: Reply with quote

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

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

А постоянной нагрузки на процессор от Тотала, случайно, не появляется после загрузки плагинов? Может, какой-то плагин зацикливается в фоне и начинает тормозить весь процесс.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Fri Feb 19, 2016 18:56    Post subject: Reply with quote

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

Загрузку проца ещё проверю: потоки в Process Hacker когда-то смотрел, но вроде не припоминаю ничего необычного.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1232

Post (Separately) Posted: Sat Feb 20, 2016 00:44    Post subject: Reply with quote

CaptainFlint
Заметил, что после предпоследнего шага появляется ещё один поток со средним приоритетом:
Code:
GdiPlus.dll!GdipPlayTSClientRecord+0x15984

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

Целиком при необходимости. Завтра постараюсь покопаться, попробую и Image выпилить.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Программное обеспечение All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group