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

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
1-10175
sdram
2003-07-18 16:40
2003.08.04
Подскажите как в TQuickRep в панель инструментов добавить кнопку


1-10207
Salvator
2003-07-20 13:30
2003.08.04
Обращение к метке


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


3-10099
N&N
2003-07-14 11:09
2003.08.04
Как присвоить полю Integer значение


6-10331
alt7
2003-05-28 15:33
2003.08.04
Indy. disconnected