unfreed memory blocks

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Сообщение Guest » 05.03.2006 16:10:55

При запуске программы в терминале и последующем закрытии программы в терминале остается вот это:

Heap dump by heaptrc unit
7681 memory blocks allocated : 243557/264640
7679 memory blocks freed : 243493/264568
2 unfreed memory blocks : 64
True heap size : 196608 (16 used in System startup)
True free heap : 196384
Should be : 196408
Call trace for block $B7F72E7C size 36
$080A1675
$080E4BF0
$080E4686
$0806B0E3
$0806B153
$08066448
$0805E464
$0805DEF3
Call trace for block $B7F832CC size 28
$080A1675
$080E4604
$0806B0E3
$0806B153
$08066448
$0805E464
$0805DEF3
$0805DBB3

Как я понял, не освобождены 2 ячейки памяти. Не подскажите что это и как с этим бороться?

PS ОС - Linux, Lazarus 0.9.12.
Guest
 

Сообщение STAKANOV » 05.03.2006 16:28:03

Не подскажите что это и как с этим бороться?

не смотри туда, отключи heaptrc

после закрытия программы вся пмять ей задействованная возвращается системе (проблемы могут быть только с ДОС)

мы это обсуждали как-то - <a href='http://freepascal.ru/forum/index.php?showtopic=427' target='_blank'>http://freepascal.ru/forum/index.php?showtopic=427</a>

А вот отслеживать выделение/освобождение памяти во время работы, чтобы не поулчит AV или нехватку памяти это более сложный вопрос.
Аватара пользователя
STAKANOV
постоялец
 
Сообщения: 179
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Google Adsense [Bot], MailRu[bot] и гости: 8

Рейтинг@Mail.ru