/STACK
(Alokacje stosu)
/STACK:
reserve
[,
commit
]
Uwagi
Opcja /STACK
konsolidatora ustawia rozmiar stosu w bajtach. Użyj tej opcji tylko podczas tworzenia .exe
pliku. Opcja /STACK
jest ignorowana po zastosowaniu do .dll
plików.
Wartość reserve
określa łączną alokację stosu w pamięci wirtualnej. W przypadku maszyn ARM64, x86 i x64 domyślny rozmiar stosu wynosi 1 MB.
Wartość commit
podlega wykładni przez system operacyjny. W środowisku WindowsRT określa ilość pamięci fizycznej do przydzielenia w danym momencie. Zatwierdzona pamięć wirtualna powoduje zarezerwowanie miejsca w pliku stronicowania. Wyższa commit
wartość pozwala zaoszczędzić czas, gdy aplikacja potrzebuje więcej miejsca na stosie, ale zwiększa wymagania dotyczące pamięci i prawdopodobnie czas uruchamiania. W przypadku maszyn ARM64, x86 i x64 wartość domyślna commit
to 4 KB.
reserve
Określ wartości i commit
w notacji szesnastkowej w języku C lub dziesiętnym (użyj prefiksu0x
).
Innym sposobem ustawienia rozmiaru stosu jest instrukcja STACKSIZE
w pliku definicji modułu (.def
). STACKSIZE
zastępuje opcję Alokacje stosu (/STACK
), jeśli zostały określone oba. Rozmiar stosu można zmienić po skompiluj .exe
plik za pomocą EDITBIN
narzędzia .
Aby ustawić tę opcję konsolidatora w środowisku programowania Visual Studio
Otwórz okno dialogowe Strony właściwości projektu. Aby uzyskać szczegółowe informacje, zobacz Set C++ compiler and build properties in Visual Studio (Ustawianie właściwości kompilatora języka C++ i kompilowania w programie Visual Studio).
Wybierz stronę właściwości System konsolidatora właściwości>konsolidatora> konfiguracji.
Zmodyfikuj jedną z następujących właściwości:
Rozmiar zatwierdzenia stosu
Rozmiar rezerwy stosu
Aby programowo ustawić tę opcję konsolidatora
- Zobacz StackCommitSize i StackReserveSize właściwości.