CBL_ALLOC_THREAD_MEM

スレッド固有のヒープメモリを割り当てる。

構文:
call "CBL_ALLOC_THREAD_MEM" using      mem-pointer
                            by value  mem-size
                            by value  flags
                            returning status-code
パラメタ:
呼び出しプロトタイプ使用時 ( 説明の読み方) PIC (32bitシステム)
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によって事前に解放されていないことが条件である。)

他参照:

関連項目