/HEAP
Задает размер кучи в байтах. Этот параметр применяется только к исполняемым файлам.
Синтаксис
/HEAP:
reserve
[,
commit
]
Замечания
Аргумент reserve
указывает общее начальное выделение кучи в виртуальной памяти. Параметр /HEAP
компоновщика или EDITBIN округляет указанное значение до ближайшего нескольких 4 байта. По умолчанию размер кучи составляет 1 МБ.
Необязательный commit
аргумент подлежит интерпретации операционной системой. В операционной системе Windows определяется начальный объем физической памяти для выделения. Он также указывает, сколько памяти выделяется при развертывании кучы. Зафиксированная виртуальная память приводит к зарезервированию места в файле разбиения на страницы. Более commit
высокое значение позволяет системе выделять память реже, если приложению требуется больше кучи, но увеличивает требования к памяти и, возможно, длительность запуска приложения. Значение commit
должно быть меньше или равно значению reserve
. Значение по умолчанию — 4 КБ.
reserve
Укажите и commit
значения в десятичной, шестнадцатеричной или шестнадцатеричной нотации языка C. Например, значение 1 МБ можно указать как 1048576 десятичное значение или как 0x100000 в шестнадцатеричном виде или как 04000000 в восьмерике. Значения по умолчанию эквивалентны параметру /HEAP:1048576,4096
.
Пример
В этом примере команда ссылки создает исполняемый main.exe с резервом кучи размером 2 МБ. Начальные кучи и более поздние расширения кучи приходят в блоках 64 КБ:
link /heap:0x200000,0x10000 main.obj
Настройка этого параметра компоновщика в Visual Studio
Откройте диалоговое окно Окна свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойств сборки в Visual Studio.
Перейдите на страницу свойств Свойства конфигурации>Компоновщик>Система.
Задайте свойства "Размер резерва кучи" и "Размер фиксации кучи", а затем нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.