Поделиться через


Параметр /STACK (выделение памяти в стеке)

/STACK:reserve[,commit]

Заметки

Параметр /STACK задает размер стека в байтах. Этот параметр следует использовать только при построении исполняемого файла.

Значение reserve определяет общий объем выделяемой памяти стека в виртуальной памяти. Для ARM x86 и компьютеры x64, размер стека по умолчанию — 1 МБ.

Значение параметра commit интерпретируется операционной системой. В Windows WindowsRT он определяет объем физической памяти для выделения одновременно. Выделенная виртуальная память резервирует пространство в файле разбиения по страницам. Более высокое commit значение позволяет сэкономить время, когда приложению требуется большее пространство стека, но увеличивает требования к памяти и по возможности времени запуска. Для ARM x86 и компьютеры x64, фиксация значение по умолчанию 4 КБ.

Укажите значения reserve и commit в нотации десятичного числа или языка C#.

Также можно задать объем стека с помощью оператора STACKSIZE в файле определения модуля с расширением DEF. В случае одновременного указания параметр STACKSIZE переопределяет значение параметра /STACK. Чтобы изменить объем стека после построения исполняемого файла, используйте программу EDITBIN.

Установка данного параметра компоновщика в среде разработки Visual Studio

  1. Откройте диалоговое окно Страницы свойств проекта. Дополнительные сведения см. в разделе Задание свойств проекта C++.

  2. Выберите папку Компоновщик.

  3. Выберите страницу свойств Система.

  4. Измените значение одного из следующих свойств:

    • Выделить память для стека

    • Резервируемый размер стека

Установка данного параметра компоновщика программным способом

См. также

Ссылки

Настройка параметров компоновщика

Параметры компоновщика