Добавлено: Вс июн 14, 2020 16:36
Думаю, кажется, 15% не так просто заметить, только если на очень больших массивах.imig73 писал(а):или мне кажется и надо креститься?
Flasher писал(а):Я такую опцию не предлагал.
Ну как же не предлагал. Это и есть смешанный режим, ansi+юникод. Вот зачем он, почему просто не выбрать по умолчанию какой-нибудь юникод?Flasher писал(а):Если юникодных символов нет, то — ANSI, если есть, то — в соответствии со значениями (4,5,6) ключа
Уже больше похоже на норму.Flasher писал(а):Минимальные показатели вышли такими
Хотя, как оказалось я не совсем правильно оценивал скорость. Не там искал, называется, основная причина не в скорости загрузки файла (хотя то, что в результате удалось ускорить 15% - все равно неплохо).
В искусственных условиях, когда все комменты одинаковые, на большом количестве выделенных файлов, задержка оказывается значительно больше, чем когда комментарии разные. Причина в функции _GetDefDescr, которая возвращает общий коммент для выделенных файлов. Если у большого числа файлов одинаковый комментарий, функция пройдет все эти файлы до конца, а это очень, очень долго. Чем больше, тем дольше.
Замерил чистую скорость загрузки descript.ion, она оказалась на фоне всего остального очень малой: например, файл из 8500 записей загружается за ~250мс, файлы в несколько сотен записей вообще исчезающе малые 5-15мс.
В общем получатся, что главная проблема - медленная выборка из массива. Если бы в Autoit все же довели до релиза поддержку хэш-таблиц, думаю это можно было бы радикально ускорить.
