![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Приветствую Вас!
Пишу прогу, которая с помощью Embedded Web Browsser-a выполняет автоматически действия в инете (собирает статистику с онлайн-игры), всё ПРЕКРАСНО работает, но через пару часов работы моя прога начинает кушать метров 400 памяти, и бук, на котором всё это запущено, мягко выражаясь, просто дохнет. Система вся умирает. Я понимаю, железо надо апгрейдить, все дела, но суть-то не в том. Не может такая прога есть полгига памяти. Да, и также у меня есть программа попроще, которая не так оперативно и активно собирает статистику, вот она работает нормально, кушает до 30-50 метров и комп вообще не грузит. Хотел спросить, как можно понять, какие именно компоненты (переменные, массивы и т.п.) постепенно выедают память? Готов ставить любой софт, дописывать дебаггер в прогу или собиралку статистики по памяти, которая используется программой, лишь бы разобраться. Если подозрение на веббраузер - то я пользовался и стандартным Webbrowser, та же ерунда. Также пробовал убивать браузер в конце цикла работы программы, и вообще потом убирать его с формы. Не помогает, память при этом НЕ ОСВОБОЖДАЕТСЯ. Что сделать? Помогите, плз. Да, я начинающий, поэтому пара строк с ничего не говорящими для чайников терминами мне вряд ли поможет ![]() И спасибо! И еще. Одна программа у меня издает звуки кликов в браузере в процессе работы, а вторая - нет. Как мне отключить навсегда эти звуки? пробовал выключить системные звуки - не помогло ![]() |
#2
|
||||
|
||||
![]() Что-то где-то утекает. Поищи, где у тебя может что-то не удаляться...
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
||||
|
||||
![]() посчитать количество "выделяющих" память функций (GetMemory, AllocMem и т.д.), количество вызовов конструктора Create() и сравнить с количеством "освобождающих" память функций (FreeMemory, FreeMem и т.д.), количеством вызовов деструктора Free().
|
#4
|
|||
|
|||
![]() GetMemory, AllocMem - Не использую.
Create() - у меня просто дохрена, и они довольно объемные. Но Free() обязательно стоит в конце. причем, если Free ессно не в условиях и не в TRY EXCEPT , а просто жестко прописан и всё. Я вот еще на браузер грешу, только не представляю, как очистить его темп-директорию... Ладно, буду искать. Черт. Спасиб! |
#5
|
|||
|
|||
![]() Какая версия IE стоит на машине. Вообще, этот браузер замечен в недобросовестной работе с памятью... Я бы, если это возможно, вообще отказался бы от WebBrauser'а и переписал бы все на Indy.
|
#6
|
||||
|
||||
![]() Поддержу Imikle. Ибо встраиваемые браузеры - редкостное гуано, как и мелкомягкий "Исследователь".
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |