Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


ローカル参照の削除、保管、および解放

ローカル参照は、メソッド内で、随時に手動で削除できます。 ローカル参照は、メソッドの LOCAL-STORAGE SECTION に定義したオブジェクト参照内にのみ 保管します。

次のデータ項目のいずれかで参照を保管する場合は、SET ステートメントを使用して、ローカル参照をグローバル参照に変換します。

そうしないと、エラーが発生します。メソッドが戻ったときにこれらのストレージ域は保持されるので、ローカル参照は無効になります。

ほとんどのケースにおいて、メソッドが戻るときに発生するローカル参照の自動解放に依存することができます。 ただし、一部のケースにおいては、JNI サービス DeleteLocalRef を使用して、メソッド内のローカル参照を明示的に解放する必要があります。以下に、明示的解放が適切な 2 つの 状態を示します。

ローカル参照およびグローバル参照を管理するには、以下の呼び出し可能サービスを使用してください。

表 57. ローカルおよびグローバル参照の JNI サービス
サービス 入力引数 戻り値 目的
NewGlobalRef
  • JNI 環境ポインター
  • ローカルまたはグローバル・オブジェクト参照
グローバル参照、またはシステムがメモリー不足のときは NULL 入力オブジェクト参照が参照するオブジェクトに新規グローバル参照を作成する
DeleteGlobalRef
  • JNI 環境ポインター
  • グローバル・オブジェクト参照
なし 入力オブジェクト参照が参照するオブジェクトへのグローバル参照を削除する
DeleteLocalRef
  • JNI 環境ポインター
  • ローカル・オブジェクト参照
なし 入力オブジェクト参照が参照するオブジェクトへのローカル参照を削除する

関連タスク
JNI サービスへのアクセス


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)