Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Determina a quantidade de memória que o compilador atribui para construir cabeçalhos pré-compilados.
Sintaxe
/Zmfactor
Argumentos
factor
Um percentual de fator de escala que determina a quantidade de memória que o compilador usa para construir cabeçalhos pré-compilados.
O argumento factor é um percentual do tamanho padrão de um buffer de trabalho definido pelo compilador. O valor padrão de factor é 100 (por cento), mas você pode especificar valores maiores ou menores.
Comentários
Em versões anteriores ao Visual Studio 2015, o compilador do C++ usava vários heaps discretos, e cada um tinha um limite finito. Atualmente, o compilador aumenta dinamicamente os heaps conforme necessário, até um limite total de tamanho de heap, e permite que o cabeçalho pré-compilado inclua vários intervalos de endereços. Agora a opção do compilador /Zm raramente é necessária.
Se o compilador for executado sem espaço de heap e emitir a mensagem de erro C1060 ao usar a opção do compilador /Zm, talvez você tenha muita memória reservada. Considere remover a opção /Zm.
Se o compilador emitir a mensagem de erro C1076, uma mensagem C3859 acompanhante especificará o argumento factor a ser usado ao recompilar usando a opção do compilador /Zm. Essa mensagem só é significativa quando um cabeçalho pré-compilado usa #pragma hdrstop. Em outros casos, é um erro espúrio causado por problemas de pressão de memória virtual do Windows e a recomendação de usar a opção /Zm deve ser ignorada. Em vez disso, considere reduzir o número de processos paralelos ao usar a opção /maxcpucount para o MSBUILD.EXE junto com a opção /MP para o CL.EXE. Para obter mais informações, confira Problemas e recomendações de PCH (cabeçalho pré-compilado).
A tabela a seguir mostra como o argumento factor afeta o limite de alocação de memória. Na tabela, presumimos que o tamanho do buffer do cabeçalho pré-compilado padrão seja de 75 MB.
Valor de factor |
Limite de alocação de memória |
|---|---|
| 10 | 7.5 MB |
| 100 | 75 MB |
| 200 | 150 MB |
| 1000 | 750 MB |
| 2000 | 1.500 MB |
Outras maneiras de definir o limite de alocação de memória
Para definir a opção do compilador /Zm 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 de Configuração>C/C++>Linha de Comando.
Digite a opção do compilador /Zm na caixa Opções Adicionais.
Para definir a opção do compilador /Zm programaticamente
- Consulte AdditionalOptions.
Confira também
Opções do compilador MSVC
Sintaxe da linha de comando do compilador MSVC