Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.14;
Скачать: CL | DM;

Вниз

Мусор в памяти после жизнедеятельности программы.   Найти похожие ветки 

 
AlexanderMS ©   (2006-12-22 19:49) [0]

Могу ли я как-нибудь узнать, оставляет ли моя программа в памяти мусор после её завершения? Ну вдруг Free где-нибудь забуду поставить, а ведь так просто и не узнать, что и где забыл. Подумано ли об этом?


 
Kolan ©   (2006-12-22 19:56) [1]

Можешь, для этого тебе понадобится «детектор утечек»&#133
1&#133 MemProof
2&#133 MemCheck
3&#133 Можно взять BDS200 таем есть встроеный&#133


 
Anatoly Podgoretsky ©   (2006-12-22 19:57) [2]

> AlexanderMS  (22.12.2006 19:49:00)  [0]

По окончание работы вся память возвращается


 
ors_archangel ©   (2006-12-22 21:21) [3]


> Подумано ли об этом?

Об этом подумали M$ и Intel:
Каждый процесс работает в виртуальном адрессном пространстве, которое уничтожается вместе с процессом, т.о. любые выделенные страницы освобождаются, если твоя программа и оставляет в памяти мусор, то он весь вычищается ОС


 
Kolan ©   (2006-12-22 21:27) [4]

> то он весь вычищается ОС

Но, ИМХО, лучьше на это не надеятся и делать самому все&#133


 
ors_archangel ©   (2006-12-22 23:06) [5]


> лучьше на это не надеятся и делать самому все

Я вообще считаю, что создание и уничтожение сущностей избытоно, когда в языке чётко разграничены области видимости для каждой переменной. Например, мы же не пишем  i := TInteger.Create перед использованием целой переменной. Конечно, конструктор может принимать параметры, и т.о. создавать совершенно разные объекты, но ту же функциональность можно получить и через обычные свойства, если бы мы не создавали и не уничтожали объекты, то проблем с "мусором", наверника, было бы меньше


 
Kolan ©   (2006-12-22 23:18) [6]

то проблем с «мусором», наверника, было бы меньше
Ну так и разработчики C# так тоже думают&#133


 
tesseract ©   (2006-12-22 23:44) [7]


> ors_archangel ©   (22.12.06 23:06) [5]


Покодь на C. Быстро вкатишь сколько там сил на слежение за памятью уходит, и с чего это buffer/stack overflow считаются критическими.


 
ors_archangel ©   (2006-12-22 23:54) [8]


> Покодь на C

Нет, спасибо :) А вот C# - это уже интересно


 
tesseract ©   (2006-12-23 00:09) [9]


> Нет, спасибо :) А вот C# - это уже интересно


Тамошний ужас звать memlink :-) А так Delphi,  вид с высоты M$.


 
palva ©   (2006-12-23 00:18) [10]

В файле подкачки мусор может остаться. И надолго. Это если беспокоиться о сохранении секретов.


 
Anatoly Podgoretsky ©   (2006-12-23 00:32) [11]

> palva  (23.12.2006 0:18:10)  [10]

> если беспокоиться о сохранении секретов.

Если беспокоиться об этом, то не надо использовать компьютеры с оперативной памятью


 
Германн ©   (2006-12-23 01:39) [12]


> Если беспокоиться об этом, то не надо использовать компьютеры
> с оперативной памятью
>

А также не использовать накопители всез видов :-)

Но поддержу Коляна:

> Kolan ©   (22.12.06 21:27) [4]
...
> Но, ИМХО, лучьше на это не надеятся и делать самому все…
>

Особенно важно это в программах работающих непрерывно.


 
Anatoly Podgoretsky ©   (2006-12-23 10:00) [13]

> Германн  (23.12.2006 1:39:12)  [12]

А вот накопители использовать можно, пример игровые приставки, не современные конечно.


 
delphim   (2006-12-23 11:01) [14]

ors_archangel !
Вы пишете "Каждый процесс работает в виртуальном адрессном пространстве, которое уничтожается вместе с процессом, т.о. любые выделенные страницы освобождаются, если твоя программа и оставляет в памяти мусор, то он весь вычищается ОС". Вот у меня неонократно были случаи, когда после отладки одного unit IDE delphi7 завершал работу некорректно. Подозреваю (по типу сообщения ОС), что это именно этот случай. ОС = win2000 Server, SP4. Теоретически  всё обстоит именно так, однако, непонятки с утечкой памяти существуют.


 
ors_archangel ©   (2006-12-23 19:02) [15]

delphim !
Вы пишите "…после отладки одного unit IDE delphi7 завершал работу некорректно." Что делал этот юнит? если не top secret :)



Страницы: 1 вся ветка

Текущий архив: 2007.01.14;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.053 c
2-1166765004
Философ Огня
2006-12-22 08:23
2007.01.14
InterBase SQL. Узнать количество записей.


15-1166977326
Yegorchic
2006-12-24 19:22
2007.01.14
При включении ADSL модема сигнал в трубке затихает


2-1166876122
antonn
2006-12-23 15:15
2007.01.14
Пиктограммка в SpeedButton


2-1167097643
Loona
2006-12-26 04:47
2007.01.14
inhereted


8-1148304118
F@R@_on
2006-05-22 17:21
2007.01.14
Иконки