/STACK
(Allocazioni stack)
/STACK:
reserve
[,
commit
]
Osservazioni:
L'opzione /STACK
del linker imposta le dimensioni dello stack in byte. Usare questa opzione solo quando si compila un .exe
file. L'opzione /STACK
viene ignorata quando viene applicata ai .dll
file.
Il reserve
valore specifica l'allocazione totale dello stack nella memoria virtuale. Per i computer ARM64, x86 e x64, le dimensioni dello stack predefinite sono 1 MB.
Il commit
valore è soggetto all'interpretazione da parte del sistema operativo. In WindowsRT specifica la quantità di memoria fisica da allocare alla volta. La memoria virtuale di cui è stato eseguito il commit fa sì che lo spazio venga riservato nel file di paging. Un valore di commit
più alto fa risparmiare tempo quando nell'applicazione è necessario maggior spazio per lo stack, ma aumenta i requisiti di memoria e in alcuni casi il tempo di avvio. Per i computer ARM64, x86 e x64, il valore predefinito commit
è 4 KB.
Specificare i reserve
valori e commit
nella notazione esadecimale decimale o C (usare un 0x
prefisso).
Un altro modo per impostare le dimensioni dello stack consiste nell'istruzione STACKSIZE
in un file di definizione del modulo (.def
). STACKSIZE
esegue l'override dell'opzione Allocazioni stack (/STACK
) se vengono specificate entrambe. È possibile modificare le dimensioni dello stack dopo la compilazione del .exe
file usando lo EDITBIN
strumento .
Per impostare questa opzione del linker nell'ambiente di sviluppo di Visual Studio
Aprire la finestra di dialogo Pagine delle proprietà del progetto. Per informazioni dettagliate, vedere Impostare il compilatore e le proprietà di compilazione.
Selezionare la pagina delle proprietà Sistema del linker>proprietà Proprietà>di configurazione.
Modificare una delle proprietà seguenti:
Dimensioni commit stack
Dimensioni riserva stack
Per impostare l'opzione del linker a livello di codice
- Vedere le proprietà StackCommitSize e StackReserveSize.
Vedi anche
Informazioni di riferimento sul linker MSVC
Opzioni del linker MSVC