/STACK
(Stapelzuordnungen)
/STACK:
reserve
[,
commit
]
Hinweise
Die /STACK
Linkeroption legt die Größe des Stapels in Byte fest. Verwenden Sie diese Option nur, wenn Sie eine .exe
Datei erstellen. Die /STACK
Option wird ignoriert, wenn sie auf .dll
Dateien angewendet wird.
Der reserve
-Wert gibt die gesamte Stapelzuordnung im virtuellen Speicher an. Für ARM64-, x86- und x64-Computer beträgt die Standardstapelgröße 1 MB.
Der commit
Wert unterliegt der Interpretation durch das Betriebssystem. In WindowsRT gibt sie die Menge des physischen Speichers an, der jeweils zugeordnet werden soll. Die Zusicherung von virtuellem Speicher bewirkt die Belegung von Speicher in der Auslagerungsdatei. Ein höherer commit
-Wert spart Zeit, wenn die Anwendung mehr Stapelspeicher benötigt, erhöht aber auch den Arbeitsspeicherbedarf und möglicherweise die Startzeit. Für ARM64-, x86- und x64-Computer beträgt der Standardwert commit
4 KB.
Geben Sie die reserve
Werte commit
in dezimaler oder C-Sprache hexadezimaler Schreibweise an (verwenden Sie ein 0x
Präfix).
Eine weitere Möglichkeit zum Festlegen der Größe des Stapels ist die STACKSIZE
Anweisung in einer Moduldefinitionsdatei (.def
). STACKSIZE
setzt die Option "Stack Allocations (/STACK
)" außer Kraft, wenn beide angegeben sind. Sie können die Stapelgröße ändern, nachdem die .exe
Datei mithilfe des EDITBIN
Tools erstellt wurde.
So legen Sie diese Linkeroption in der Visual Studio-Entwicklungsumgebung fest
Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).
Wählen Sie die Eigenschaftenseite Konfigurationseigenschaften>Linker>System aus.
Ändern Sie eine der folgenden Eigenschaften:
Stack Commit-Größe
Stack Reserve Size
So legen Sie diese Linkeroption programmgesteuert fest
- Siehe die Eigenschaften StackCommitSize und StackReserveSize.