JVM COBOL からのネイティブ COBOL の呼び出し

JVM COBOL では、CALL 文を使用してネイティブ・コードと相互運用します。次に例を示します。

 call xxx using by yyy p by zzz q returning r

ここで、

xxx
保存またはリンケージ項目またはリテラルです。CALL 文で呼び出すエントリ・ポイントが保持されます。
p および q

using キーワードと returning キーワード間の項目です。これらはパラメータで、ゼロ個以上のパラメータを使用できます。

yyy および zzz
パラメータ渡しモード (by content、by reference、または by value) を指定します。デフォルトは by reference です。
RETURNING 句
オプションです。

共有ライブラリのネイティブ・エントリ・ポイント (ほとんどのプラットフォームの場合 .dll または .so) を呼び出すには、共有ライブラリをロードする必要があります。これにより、JVM ランタイム・システムで共有ライブラリが認識されます。ライブラリをロードしてから、ネイティブ・エントリ・ポイントの呼び出しを行ってください。この操作は次のように行います。

 call "JVM_LOAD_NATIVE" myLibrary
call "myEntryPoint" using by reference s

ここで、

myLibrary
拡張子の付いていない共有ライブラリの名前です。
myEntryPoint
ライブラリの呼び出されたエントリ・ポイントです。
JVM_LOAD_NATIVE
JVM ランタイムのルーチンです。

JVM ランタイム・システムは、要求されたエントリ・ポイントを、Callable 属性を持つ JVM メソッドに解決しようとします。特定の名前のエントリ・ポイントが JVM で見つからない場合、JVM ランタイム・システムは、エントリ・ポイントをネイティブ・エントリ・ポイントに解決しようとします。ネイティブ・エントリ・ポイントが見つかった場合、エントリ・ポイントが呼び出され、その名前はそれ以降のネイティブ・エントリ・ポイントと関連付けられるため、全検索が再度行われることはありません。

注: