アプリケーションのメモリ計画を動的に変更する。
構文:
call "CBL_MEM_STRATEGY" using by value func
by reference flags
returning status-code
パラメタ:
|
呼び出しプロトタイプ使用時 (
説明の読み方) |
PIC (32bitシステム) |
func |
cblt-x4-comp-5 |
pic x(4) comp-5. |
flags |
cblt-x4-comp-5 |
pic x(4) comp-5. |
status-code |
説明の読み方 参照 |
入力パラメタ:
func |
0 |
メモリ計画を取得する。 |
1 |
メモリ計画を設定する。 |
2 |
確認された解放メモリブロックを取得する。 |
3 |
確認する解放メモリブロックを設定する。 |
|
flags |
funcの設定値が1の場合、設定されるメモリ計画は以下のとおり。
ビット |
内容 |
0 |
0 |
アクションなし |
1 |
バイト計画を確認する。各メモリ割当ての前後に確認バイトを付加する。 |
|
1 |
0 |
アクションなし |
1 |
解放メモリ計画を確認する。続いて不正が生じないか最後に解放されたnメモリブロックの監視を行う。nは、funcの値が3に設定された場合の現在値。 |
|
2 |
0 |
アクションなし |
1 |
計画を再利用する。監視された不正の解放メモリが割当て要求に沿うようにする。 |
|
3-29 |
今後の使用のために保留。値は0。 |
30 |
0 |
アクションなし |
1 |
互換性計画。実行時システムの以前のバージョンとの互換性を維持する。 |
|
31 |
0 |
アクションなし |
1 |
有効化計画。割当てもしくは解放操作が生じるごとにメモリを有効化する。 |
|
funcの値が3に設定されている場合は、フラグは不正を監視する解放メモリブロックの数を示す。
|
出力パラメタ:
flags |
funcの設定値が0の場合、フラグは現在のメモリ計画を以下のように示している。
ビット |
内容 |
0 |
0 |
アクションなし |
1 |
バイト計画を確認する。各メモリ割当ての前後に確認バイトを付加する。 |
|
1 |
0 |
アクションなし |
1 |
解放メモリ計画を確認する。続いて不正が生じないか最後に解放されたnメモリブロックの監視を行う。nは、funcの値が3に設定された場合の現在値。 |
|
2 |
0 |
アクションなし |
1 |
計画を再利用する。監視された不正の解放メモリが割当て要求に沿うようにする。 |
|
3-29 |
今後の使用のために保留。値は0。 |
30 |
0 |
アクションなし |
1 |
互換性計画。実行時システムの以前のバージョンとの互換性を維持する。 |
|
31 |
0 |
アクションなし |
1 |
有効化計画。割当てもしくは解放操作が生じるごとにメモリを有効化する。 |
|
funcの値が2に設定されている場合は、フラグは不正を監視する解放メモリブロックの数を示す。
|
status-code |
操作状態
0 |
すべてのメモリ割当てに不正なし |
1000 |
要求に応えるためのメモリが不十分 |
1009 |
無効な指定パラメタ |
|
説明:
本ルーチンによって、アプリケーション内部からアプリケーションのメモリ計画を変更できる。memory_strategyおよびmemory_free_check_size実行時調節ルーチンで提供されるものと同じ機能をもつ。
他参照:
関連項目