Otevřít hlavní menu

MemAvail

Verze z 5. 10. 2012, 20:47, kterou vytvořil Zdeno Sekerák (diskuse | příspěvky)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)

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.