recycle メソッドは、無条件にオブジェクトを破棄し、そのメモリをシステムに返します。
すべての lotus.domino クラスには、次のメソッドが含まれます。
public void recycle()
public void recycle(java.util.Vector objects)
2 番目のメソッドでは、ベクトルには再利用される Domino オブジェクトが含まれます。このメソッドは、再利用操作を効果的にバッチ処理するため、リモート (IIOP) 呼び出しに特に有効です。
Java™ は、ヘビーウェイトのバックエンド Domino オブジェクトを認識しないで、それを表すライトウェイト Java オブジェクトのみを認識します。ガーベッジコレクションは、最初に明示的にリサイクルしない限りは、Domino オブジェクトには影響を及ぼしません。
メモリに問題が生じた場合は、recycle を試してください。その場合、次のガイドラインに従ってください。
文書またはアイテムを列挙するループは、再利用対象の好例です。
リモート (IIOP) 環境では、recycle はサーバー上のリソースを解放します。クライアント側のキャッシュは存在しますが、Java オブジェクトはもはやリモート側の対象と通信できません。
リモート (IIOP) 環境では、recycle は任意のオブジェクトの任意のスレッドから呼び出せます。
同じ Domino 要素を表す複数のオブジェクトを作成した場合、1 つをリサイクルすると、すべてがリサイクルされます。以下に例を示します。
View v1 = db.getView("All");
View v2 = db.getView("All");
v1.recycle(); // also recycles v2
リサイクルしたオブジェクトを使用しようとした場合、結果は保証されません。エラーの発生についての保証もありません。