$M: Přidělování paměti

From Delphi & Pascal (česká wiki)
Revision as of 12:35, 8 October 2012 by Zdeno Sekerák (talk | contribs) (1 revízia: Direktivy překladača)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Specifikuje parametry alokace paměti pro program.


Syntaxe
{$M VelZásobníku, VelHaldy}            (Windows)
{$M VelZásobníku}                      (chráněný režim)
{$M VelZásobníku, MinHaldy, MaxHaldy}  (reálný režim)


Implicitně
{$M 8192,8192}                         (Windows)
{$M 16384}                             (chráněný režim)
{$M 16384, 0, 655360}                  (reálný režim)


Typ
Globální


Povel menu
Options|Compiler|Memory Sizes


Popis

Direktiva $M určuje parametry alokace paměti aplikace nebo knihovny. StackSize musí být celé číslo v rozsahu 1024 až 65520, které určuje velikost zásobníkového segmentu.


V reálném režimu DOSu určují HeapMin a HeapMax minimální, resp. maximální velikost haldy. HeapMin musí být v rozsahu 0 až 655360 a HeapMax musí být v rozsahu HeapMin až 655360.


Ve Windows určuje HeapSize velikost oblasti lokální haldy v datovém segmentu. HeapSize musí být celé číslo v rozsahu 0 až 65520.

Poznámka

Direktiva $M nemá žádný účinek, když se použije v jednotce. Kromě toho, v knihovnách se parametr StackSize v direktivě $M ignoruje (knihovna vždy používá zásobník aplikací, které ji volají).


Viz také
StackSize
HeapSize