Udostępnij za pośrednictwem


/Zm (Określ limit alokacji pamięci prekompilowanego nagłówka)

Określa ilość pamięci przydzielanej przez kompilator do konstruowania wstępnie skompilowanych nagłówków.

Składnia

/Zmfactor

Argumenty

factor
Procent współczynnika skalowania, który określa ilość pamięci używanej przez kompilator do konstruowania wstępnie skompilowanych nagłówków.

Argument factor jest wartością procentową domyślnego rozmiaru buforu roboczego zdefiniowanego przez kompilator. Wartość domyślna to factor 100 (procent), ale można określić większe lub mniejsze kwoty.

Uwagi

W wersjach wcześniejszych niż program Visual Studio 2015 kompilator języka C++ używał kilku dyskretnych stertów, a każdy z nich miał ograniczony limit. Obecnie kompilator dynamicznie zwiększa sterty zgodnie z potrzebami do całkowitego limitu rozmiaru sterty i umożliwia wstępnie skompilowany nagłówek składający się z wielu zakresów adresów. Teraz opcja kompilatora /Zm jest rzadko konieczna.

Jeśli kompilator zabraknie miejsca na stercie i emituje komunikat o błędzie C1060 podczas korzystania z /Zm opcji kompilatora, może być zarezerwowana zbyt duża ilość pamięci. Rozważ usunięcie /Zm opcji.

Jeśli kompilator emituje komunikat o błędzie C1076 , towarzyszący komunikat C3859 określa factor argument do użycia podczas ponownego kompilowania przy użyciu opcji kompilatora /Zm . Ten komunikat jest istotny tylko wtedy, gdy prekompilowany nagłówek używa wartości #pragma hdrstop. W innych przypadkach jest to fałszywy błąd spowodowany problemami z pamięcią wirtualną systemu Windows, a zalecenie dotyczące korzystania z /Zm tej opcji należy zignorować. Zamiast tego należy rozważyć zmniejszenie liczby procesów równoległych podczas korzystania z /maxcpucount opcji MSBUILD.EXE wraz z opcją /MP CL.EXE. Aby uzyskać więcej informacji, zobacz Prekompiled Header (PCH) issues and recommendations (Problemy i zalecenia dotyczące prekompilowanego nagłówka (PCH).

W poniższej tabeli pokazano, jak factor argument wpływa na limit alokacji pamięci. W tabeli założono, że rozmiar domyślnego wstępnie skompilowanego buforu nagłówka wynosi 75 MB.

Wartość factor Limit alokacji pamięci
10 7,5 MB
100 75 MB
200 150 MB
1000 750 MB
2000 1500 MB

Inne sposoby ustawiania limitu alokacji pamięci

Aby ustawić opcję kompilatora /Zm w środowisku programistycznym programu Visual Studio

  1. 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).

  2. Wybierz stronę Właściwości>konfiguracji C/C++>Wiersza polecenia.

  3. Wprowadź /Zm kompilator opcji w polu Dodatkowe opcje.

Aby programowo ustawić opcję kompilatora /Zm

Zobacz też

Opcje kompilatora MSVC
Składnia wiersza polecenia kompilatora MSVC