Главная страница
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.02 c
14-10438
Alexey
2003-07-17 17:11
2003.08.04
Как написат Web Server


1-10230
iNew
2003-07-21 04:24
2003.08.04
Поиск в текстовом файле.


7-10469
aklymenko
2003-05-23 10:48
2003.08.04
ВЕСЫ


3-10088
Hemp
2003-07-12 21:40
2003.08.04
куда вставить PRIMARY KEY?


4-10525
ych_boriss
2003-06-03 12:37
2003.08.04
мессаги WM_MOUSELEAVE, WM_MOUSEHOVER.