IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> SetFocus утечка памяти win7 скачать бесплатно
сообщение
Сообщение #1


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


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

В общем, я в итоге нашёл строчку, после закомментирования которой утечки исчезают. (А после раскомментирования снова появляются.)

Вот она:

SetFocus(edCode.Handle);


Доктор, как это понимать? Я умру?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


Написание простейшего теста (WinAPI окно + кнопка + поле ввода) не выявило каких-либо утечек при зажимании кнопки. Значит, что-то все-же у тебя со структурами не так. Минимальный проект, иллюстрирующий проблему, можешь собрать? Для начала - где именно находится этот SetFocus? И что делается в WM_SETFOCUS того самого edCode?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


> И что делается в WM_SETFOCUS того самого edCode?

Ничего. Я заменил велосипедный класс на стандартный, утечка осталась.

> Минимальный проект, иллюстрирующий проблему, можешь собрать?

Ща попробую. В общем, запускаете, держите F9, глядя в диспетчер задач.
Прикрепленный файл  memleak.rar ( 8.93 килобайт ) Кол-во скачиваний: 587

Опции компилятора
Прикрепленное изображение

Ещё та же фигня на wglMakeCurrent

Добавлено через 14 мин.
Забыл сказать: строка 137


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


Постоянного роста потребления памяти не наблюдаю. Сначала - да, за первую секунду чуть увеличивается, на несколько К, но потом сколько я не держал F9 - не увеличивается совершенно. Компилировал D2009 (из-за чего пришлось чуть подкорректировать код, поменять кое-где PChar на PAnsiChar), на Win7 Ultimate.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Странно вообще.
С компилятором это связано быть не может.
Значит, опять винда голову морочит.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Внезапно заметил в этой же колонке (выделенная память), что у Дельфи-7 занято 770 мегабайт оперативы.
Что-то я перестал понимать, что там вообще.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 15:24
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name