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

Вниз

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

 
Raduga   (2003-05-22 15:24) [0]

Ребята, подскажите пожалуйста , как из проги узнать сколько места она занимает в памяти (чтоб выводилось куда-нибудь на форму).


 
Raduga   (2003-05-22 16:10) [1]

Вообще такое возможно?


 
KSergey   (2003-05-22 16:16) [2]

Нет


 
KSergey   (2003-05-22 16:17) [3]

Обсуждалось не так давно


 
yaJohn   (2003-05-22 16:19) [4]

Для борьбы с утечками я поступаю дешево и сердито: определяю сколько памяти осталось

function GetFreeMemory: integer;
var uMemStatus: _MEMORYSTATUS;
begin
GlobalMemoryStatus(uMemStatus);
result := uMemStatus.dwAvailPhys;
end;


 
clickmaker   (2003-05-22 16:36) [5]

yaJohn © (22.05.03 16:19)
Для борьбы с утечками я поступаю дешево и сердито: определяю сколько памяти осталось


...затем потихоньку начинаю чикать чужие процессы. Не хрен у меня память отымать! ;)


 
Fantasist.   (2003-05-22 17:03) [6]


> KSergey © (22.05.03 16:16)
> Нет


А что так сурово? А зачем тогда функция GetHeapStatus (Returns the current status of the memory manager)? Вся выделяемая динамическая память средствами дельфийского паскаля проходит через стандартный менеджер, и если он не подменен, то вроде проблем быть не должно. Если есть выделение памяти с помощью API, так это тоже считывается с помощью тех же API. Память выделенная под стек статична. Чего еще упускаем?

P.S. Можно еще подменить built-in манаджер памяти (SetMemoryManager) подменить и самому следить за выделением освобождением памяти.


 
Кулюкин Олег   (2003-05-22 17:11) [7]

AllocMemSize не поможет?


 
Anatoly Podgoretsky   (2003-05-22 20:16) [8]

Ну например DLL


 
Fantasist.   (2003-05-23 07:11) [9]


> Ну например DLL


Если только. Но частности, которые можно конролировать, если длл-ка твоя. Конечно, существуют еще системные выделение памяти, например, для поддержки COM, которую действительно посчитать тяжеловато. Но в принципе эти вещи можно отключить во время тестирования памяти. Хорошо согласен, определени сабжа действительно не всегда тривиально, но во многих случаях вполне реально.


 
Zelius   (2003-05-23 12:41) [10]

Windows Management Instrumentation позволяет получить практически любую информацию, в том числе и ту, что в Task Manager живет.



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

Форум: "Система";
Текущий архив: 2003.08.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
14-10433
Soft
2003-07-17 15:25
2003.08.04
Господа, а вы все, оказывается преступники.


14-10460
Knight
2003-07-17 21:16
2003.08.04
Телефонный справочник - законно ли это?


4-10520
sosv
2003-06-02 14:33
2003.08.04
Можно ли отловить запуски приложений?


3-10145
Avreliy
2003-07-14 18:37
2003.08.04
Rave Reports.


11-10154
jfo
2002-11-30 14:35
2003.08.04
Хочется странного... или может что не то делаю...





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский