スレッド固有のヒープメモリを割り当てる。
構文:
call "CBL_ALLOC_THREAD_MEM" using mem-pointer
by value mem-size
by value flags
returning status-code
パラメーター:
|
呼び出しプロトタイプ使用時 (
説明の読み方) |
PIC (32 ビット システム) |
mem-pointer |
cblt-pointer |
usage pointer. Must be level 01. |
mem-size |
cblt-os-size |
pic x(4) comp-5. |
flags |
cblt-os-flags |
pic x(4) comp-5. |
status-code |
説明の読み方 参照 |
入力パラメーター:
mem-size |
割り当てるメモリのバイト数 |
flags |
必要なメモリタイプ。以下のビットを設定できる。
ビット0-1 |
予約済み、ゼロに設定する必要がある。 |
ビット2 |
どの呼び出しプログラムからも独立させてメモリを割り当てる。 |
ビット4-31 |
予約済み。ゼロに設定する必要がある。 |
|
出力パラメーター:
mem-pointer |
割り当てられるメモリへのポインター。割り当てられたメモリは初期化されない。 |
status-code |
0 |
メモリ割り当てが正常終了した |
157 |
メモリを割り当てることができない |
181 |
フラグ指定が矛盾している |
|
説明:
ビット2が設定されていない場合、メモリが割り当てられたプログラム(論理的にも実質的にも)がキャンセルされた時点で、CBL_ALLOC_THREAD_MEMによって割り当てられたメモリは解放される。この場合のプログラムは 直接または間接的に呼び出しを行うCOBOLプログラムになる。
ビット2が設定されている場合、メモリが割り当てられたスレッドが終了した時点でメモリは解放される。(この場合のメモリはCBL_FREE_THREAD_MEMによって事前に解放されていないことが条件である。)
他参照:
関連項目