View previous topic :: View next topic |
Author |
Message |
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Sun Feb 19, 2006 02:20 Post subject: |
|
|
Все, разобрался, почему теряется память! У меня в коде все корректно, дело в менеджере памяти Delphi: при постоянном перевыделении памяти на структуру (память перевыделялась для списка записей кеша при чтении _каждой_ записи) - получается дикая фрагментация. Я сделал так, что память перевыделяется только для каждых новых 10000 записей, и фрагментация пропала, теперь должно быть все хорошо. Если понадобится, увеличу это число до 50-100 тыс., тогда для 37000 записей память будет выделяться за один вызов.
Глюк с пропаданием окна прогресса после Alt+Tab вроде тоже поправил. Завтра выложу новую версию.
Спасибо Schmaster за то, что подстегнул... _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Sun Feb 19, 2006 10:02 Post subject: |
|
|
Версия 1.2.5:
19.02.06: поправлено: слишком большое потребление памяти;
поправлено: потеря фокуса окном индикации чтения кэша |
|
Back to top |
|
|
SCHMaster
Joined: 15 Dec 2004 Posts: 296 Location: Киев
|
(Separately) Posted: Mon Feb 20, 2006 03:56 Post subject: |
|
|
Alextp
Quote: | поучаствовать в разработке плагина |
Можно попробовать. Для начала как ты память выделяешь? |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Tue Feb 21, 2006 11:08 Post subject: |
|
|
Quote: | Для начала как ты память выделяешь? |
А это что-то значит? Глюк с выделением памяти я уже поправил. |
|
Back to top |
|
|
SCHMaster
Joined: 15 Dec 2004 Posts: 296 Location: Киев
|
(Separately) Posted: Wed Feb 22, 2006 03:32 Post subject: |
|
|
2Alextp
Упс... Точно . И весьма удачно - и не жрет память и побыстрее будет
Тогда попробуй на FindFirst установить проверку на нажатость ALT, что-б не "гонять" плагин для вызова настроек. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Sat Feb 25, 2006 19:44 Post subject: |
|
|
SCHMaster
Quote: | что-б не "гонять" плагин для вызова настроек. |
Попробую. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Sat Apr 29, 2006 16:03 Post subject: |
|
|
29.04.06: выпущен исходный код на Delphi;
вызов диалога настроек больше не запускает сканирование кэша
VVP wrote: | Для других броузеров. Просим...просим...
И спасибо большое за то,что уже сделано. |
Исходник я выложил, переделать его под другой браузер очень легко, достаточно переписать пару функций (чтение записей кэша и копирование файла из кеша). Написать эти функции для Firefox тоже легко, где-то у меня есть исходники (чужие) чтения кэша Мозиллы, а для Firefox все аналогично, там только структура кеша немного поменялась и путь к кешу надо по-другому получать.
Будут желающие? _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Wed May 10, 2006 08:19 Post subject: |
|
|
Jer wrote: | Попробовал плагин. Все работает, но, хотелось бы, чтобы при переходе из папки в корневой каталог, в котором отображается кэш после индексирования, не происходило обновление оного. Потому как, при копировании, или попытке узнать общее занимаемое место (например, для последующей сортировки по размеру содержимого), плагин начинает бесконечную переиндексацию и, в итоге, валит TC.
|
Можно указать порядок действий (при копировании или попытке узнать место), при котором плагин валит TC? И общее число записей кеша (показывается при первом сканировании)? Чтобы я смог повторить.
А то я копирую (выделяю домен, F5) или считаю место (выделяю домен пробелом), и все работает. _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
Jer
Joined: 10 May 2006 Posts: 4
|
(Separately) Posted: Wed May 10, 2006 12:32 Post subject: |
|
|
Общее число элементов -- 10838. Насчет копирования и просмотра места -- при копировании поодиночке, все работает. Равно, как и при выделении пробелом. Вылет TC произошел при попытке копирования всей корневой папки с кэшем. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Wed May 10, 2006 13:35 Post subject: |
|
|
Сейчас проверил, вся папка скопировалась нормально, правда при небольшом числе элементов (~1000).
В бесконечный цикл он не входит, просто TC очень долго сканирует папки (сканирует дольше, чем копирует).
А как именно валит TC, какое сообщение? _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
Jer
Joined: 10 May 2006 Posts: 4
|
(Separately) Posted: Thu May 11, 2006 00:34 Post subject: |
|
|
Пока что больше не вываливается. Видимо, что-то стороннее могло сыграть свою роль. Но, полного копирования не дождался, отменил. Соответственно, в папке, куда все копировалось, не оказалось ничего. И еще достаточно сильно мешает постоянно выскакивающее окно с сообщением про индексацию и копирование. Потому как, оно получается в режиме "поверх всех окон", насколько я понял. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Thu May 11, 2006 07:58 Post subject: |
|
|
Окно постараюсь убрать, если можно.
Но сканировать он все равно будет долго, это от плагина не зависит: TC строит список всех файлов. _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
Jer
Joined: 10 May 2006 Posts: 4
|
(Separately) Posted: Fri May 26, 2006 20:12 Post subject: |
|
|
Куда-то автор пропал. Никаких новостей о плагине нет? |
|
Back to top |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Fri May 26, 2006 22:55 Post subject: |
|
|
Он не пропал, а уехал на пару дней на дачу. |
|
Back to top |
|
|
Alextp
Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Tue May 30, 2006 17:01 Post subject: |
|
|
Я здесь. А какие новости о плагине ожидаются?
По поводу окна индексации:
Quote: | И еще достаточно сильно мешает постоянно выскакивающее окно с сообщением про индексацию и копирование. Потому как, оно получается в режиме "поверх всех окон", насколько я понял. |
Это окно убирать наверное не буду: его нельзя убрать только при сканировании папок для копирования, т.к. плагин не различает, для копирования вызвано чтение папки или для чего-то другого. А совсем убирать это окно нельзя. _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
|
|