recycle (NotesBase - JavaScript)

無条件にオブジェクトを破棄し、そのメモリをシステムに返します。

定義場所

NotesBase

構文

recycle() : void

recycle(vector:java.util.Vector) : void

パラメータ 説明
vector リサイクルされる Domino® オブジェクトです。2 番目のメソッドでは、recycle 操作が有効にバッチ処理されます。

使用法

これらのメソッドは、NotesErrorNotesExceptionNotesFactory を除くすべての Domino クラスで継承されます。

これらのメソッドは、ヘビーウェイトのバックエンド Domino オブジェクトを認識しないで、それを表すライトウェイト Java™ オブジェクトのみを認識します。ガーベッジコレクションは、最初に明示的にリサイクルしない限りは、Domino オブジェクトには影響を及ぼしません。

メモリに問題が発生した場合は、recycle を試してください。その場合、次の指針に従ってください。
  • 不要になった場合にのみ、オブジェクトをリサイクルする。
  • sessiondatabaseview などのグローバルオブジェクトや、データソースに対する view オブジェクトまたは document オブジェクトはリサイクルしない。
  • 親をリサイクルすると、そのすべての子もリサイクルされる。
  • 文書またはアイテムを列挙するループは、リサイクルの対象として適しています。
同じ Domino 要素を表す複数のオブジェクトを作成した場合、1 つをリサイクルすると、すべてがリサイクルされます。例:
var v1 = db.getView("All");
var v2 = db.getView("All");
v1.recycle(); // also recycles v2

リサイクルしたオブジェクトを使用しようとした場合、結果は保証されません。エラーの発生についての保証もありません。

言語間の参照

Java クラスの recycle
以下の例では、NotesView オブジェクトを使用した後にこれをリサイクルしています。
var v = database.getView("All");
try {
	if (v == null) return "No ¥"All¥" view."
	return "Number of columns in ¥"All¥" view = " + v.getColumnCount()
} finally {
	v.recycle()
}