Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
14-10443
nick-from
2003-07-16 19:51
2003.08.04
Посоветуйте корпус + кулер


1-10239
xRay
2003-07-20 01:56
2003.08.04
TListView


14-10455
gn
2003-07-18 09:11
2003.08.04
НаШи РуЛяТ УрА!!!!!!!!!!!!!!!!!!!!!!!!!!!


3-10135
Nick
2003-07-15 09:46
2003.08.04
Работа с TTable...


1-10177
Chlavik
2003-07-23 01:39
2003.08.04
Вызов метода класса программы из dll библтотеки. Можна ли так ?




   Наверх