/STACK
(alocações de pilha)
/STACK:
reserve
[,
commit
]
Comentários
A opção do vinculador /STACK
define o tamanho da pilha em bytes. Use essa opção somente quando você compilar um arquivo .exe
. A opção /STACK
é ignorada quando aplicada a arquivos .dll
.
O valor reserve
especifica a alocação de pilha total na memória virtual. Para computadores ARM64, x86 e x64, o tamanho da pilha padrão é de 1 MB.
O valor commit
está sujeito à interpretação pelo sistema operacional. No WindowsRT, especifica a quantidade de memória física a ser alocada por vez. A memória virtual confirmada faz com que o espaço seja reservado no arquivo de paginação. Um valor commit
mais alto economiza tempo quando o aplicativo precisa de mais espaço de pilha, mas aumenta os requisitos de memória e, possivelmente, o tempo de inicialização. Para computadores ARM64, x86 e x64, o valor commit
padrão é de 4 KB.
Especifique os valores reserve
e commit
em notação decimal ou hexadecimal em linguagem C (use um prefixo 0x
).
Outra maneira de definir o tamanho da pilha é com a instrução STACKSIZE
em um arquivo de definição de módulo (.def
). STACKSIZE
substituirá a opção de Alocações de Pilha (/STACK
) se ambas forem especificadas. Você pode alterar o tamanho da pilha depois que o arquivo .exe
for criado usando a ferramenta EDITBIN
.
Para definir esta opção do vinculador no ambiente de desenvolvimento do Visual Studio
Abra a caixa de diálogo Páginas de Propriedades do projeto. Para obter detalhes, confira Definir as propriedades de build e do compilador do C++ no Visual Studio.
Selecione a página de propriedades Propriedades da Configuração>Vinculador>Sistema.
Modifique uma das seguintes propriedades:
Tamanho do commit de pilha
Tamanho da reserva de pilha
Para definir esta opção do vinculador por meio de programação
- Consulte as propriedades StackCommitSize e StackReserveSize.