/HEAP
ヒープ サイズをバイト単位で設定します。 このオプションは、実行可能ファイルにのみ適用されます。
構文
/HEAP:
reserve
[,
commit
]
解説
reserve
引数では、仮想メモリ内の初期ヒープ割り当ての合計を指定します。 /HEAP
リンカーまたは EDITBIN オプションでは、指定された値を最も近い 4 バイトの倍数に切り上げます。 既定では、ヒープ サイズは 1 MB です。
オプションの commit
引数は、オペレーティング システムによって解釈が異なります。 Windows オペレーティング システムでは、割り当てる物理メモリの初期量を指定します。 また、ヒープの拡張時に割り当てる追加のメモリの量も指定します。 仮想メモリがコミットされると、ページング ファイル内にメモリ空間が予約されます。 commit
値を大きくすると、アプリで必要なヒープ領域が増えたときに、システムでメモリの割り当て頻度を減らすことができますが、必要なメモリ量と場合によってはアプリの起動時間が増えます。 commit
値は reserve
値以下である必要があります。 既定値は 4 KB です。
reserve
および commit
の値は、10 進数、C 言語の 16 進数、または 8 進数表記で指定します。 たとえば、値 1 MB は、10 進数で 1048576 として、16 進数で 0x100000 として、8 進数で 04000000 として指定できます。 既定値はオプション /HEAP:1048576,4096
と同じです。
例
このリンク コマンドの例では、ヒープ予約が 2 MB の実行可能ファイル main.exe を作成します。 初期ヒープと以降のヒープ拡張は、64 KB のブロックになります。
link /heap:0x200000,0x10000 main.obj
このリンカー オプションを Visual Studio で設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳しくは、「Visual Studio で C++ コンパイラとビルド プロパティを設定する」をご覧ください。
[構成プロパティ]>[リンカー]>[システム] プロパティ ページを選択します。
[ヒープの予約サイズ] および [ヒープのコミット サイズ] プロパティを設定してから、[OK] または [適用] を選択して変更を保存します。