remove()

javaLib.remove() システム関数は、指定した識別子を EGL Java™ オブジェクト・スペースから除去します。ID に関連するオブジェクトも除去されますが、除去されるのは、他の ID がそのオブジェクトを参照していない場合のみです。別の ID がそのオブジェクトを参照している場合、オブジェクトはオブジェクト・スペース内に残ります。このオブジェクトは、その ID 経由でアクセスできます。

javaLib.remove() または javaLib.removeAll() システム関数を呼び出すことにより、Java 仮想マシンが EGL Java オブジェクト・スペース内でガーベッジ・コレクションを実行するようにコードを作成することができます。システム関数を呼び出してオブジェクト・スペースからオブジェクトを除去しないと、オブジェクト・スペースにアクセスするプログラムの実行時にメモリーがリカバリーされません。

javaLib.remove() および類似する関数が実行される EGL Java オブジェクト・スペースについて詳しくは、『Java アクセス関数』を参照してください。 EGL は、この Java アクセスのメソッドを以前のバージョンとの互換性のために保守します。新規コードの場合は、より強力な ExternalType 構文を使用してください。詳しくは、『ExternalType パーツ』を参照してください。

構文

  javaLib.remove(identifier javaObjId in)
identifier
オブジェクトを参照する ID (大/小文字を区別)。STRING 型と代入互換性のある任意の変数または式を入力することができます。また、入力データは、後述の例で示すとおり、objID にキャストされます。EGL は、引数値の先頭と最後から、1 バイトのブランクと 2 バイトのブランクを削除します。ID が見付からなくても、エラーは発生しません。

以下の例では、関数がオブジェクト・スペースから myStoredObject (objID としてキャスト) を除去します。

  javaLib.remove(myStoredObject as "objID:java");

フィードバック