Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.01.14;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.012 c
2-1166721305
Mityok
2006-12-21 20:15
2007.01.14
Помогите найти алгоритм Дейкстры


15-1166895855
Дмитрий Игоревич
2006-12-23 20:44
2007.01.14
Delphi "рухнула"


2-1167133279
Mishenka
2006-12-26 14:41
2007.01.14
Всплывающее окошко, как в ICQ


2-1167012893
impuls
2006-12-25 05:14
2007.01.14
Операция сдвига


15-1166649649
Chort
2006-12-21 00:20
2007.01.14
В чем ошибка?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский