/STACK (堆疊配置)
更新:2007 年 11 月
/STACK:reserve[,commit]
備註
/STACK 選項會以位元組為單位設定堆疊的大小。請只在建置 (Build) .exe 檔案時使用這個選項。
reserve 值會指定虛擬記憶體中的總堆疊配置。若是 x86 和 x64 電腦,預設堆疊大小是 1 MB。在 Itanium 晶片組上,預設大小是 4 MB。
commit 會隨作業系統的解讀而異。在 Windows NT 和 Windows 2000 中,它是指定一次要配置的實體記憶體數量。認可的虛擬記憶體會在分頁檔中保留空間。當應用程式需要較多的堆疊空間時,較高的 commit 值可節省時間,但會增加記憶體需求且可能增加啟動時間。若是 x86 和 x64 電腦,預設認可值是 4 KB。在 Itanium 晶片組上,預設值是 16 KB。
請以十進位數或 C 語言標記法指定 reserve 和 commit 值。
另外一種設定堆疊大小的方式是在模組定義檔 (.def) 中使用 STACKSIZE 陳述式。如果兩者都指定了,STACKSIZE 將會覆寫堆疊配置 (/STACK) 選項。您可以在建置 .exe 檔之後使用 EDITBIN 工具變更堆疊大小。
在 Visual Studio 開發環境中設定這個連結器選項
開啟專案的 [屬性頁] 對話方塊。如需詳細資訊,請參閱設定 Visual C++ 專案屬性。
按一下 [連結器] 資料夾。
按一下 [系統] 屬性頁。
修改下列其中一項屬性:
堆疊基本配置大小
堆疊預留大小
以程式設計方式設定這個連結器選項
- 請參閱 StackCommitSize 和 StackReserveSize 屬性。