MemAvail

From Delphi & Pascal (česká wiki)
Jump to navigation Jump to search

Vrací množství volné paměti v haldě.

Deklarace
function MemAvail: Longint;
Režim
Windows, Reálný, Chráněný
Poznámky
MemAvail vrací součet velikostí všech volných bloků paměti v haldě. Pamatujte, že je nepravděpodobné, že je k dispozici souvislý blok o velikosti vrácené hodnoty (kvůli fragmentaci haldy). Největší volný blok najde procedura MaxAvail.
V reálném režimu DOSu je MemAvail vypočteno sečtením velikostí všech volných bloků pod ukazatelem haldy s velikostí volné paměti nad ukazatelem haldy. Váš program může určit minimální a maximální požadavky na velikost haldy pomocí direktivy $M.
V chráněném režimu DOSu a ve Windows MemAvail vypočte množství dostupné volné paměti zavoláním funkce GetFreeSpace a přičtením k ní velikosti všech volných bloků v subalokačním prostoru správce haldy.
Viz také
MaxAvail


Vzorový příklad

{Memavail.PAS}
{Vzorový příklad pro funkci MemAvail.}
begin
  Writeln(MemAvail, ' bajtů k dispozici');
  Writeln('Největší volný blok má ', MaxAvail, ' bajtů');
end.