パブリック クラスWeakPointerScope
要素への弱い参照のみを保持する最小限のポインター スコープ。
ERROR(/org.bytedeco.javacpp.PointerScope)
とは対照的に、このクラスのインスタンスは、スコープにアタッチされている場合でも、到達不能になったポインターのメモリをガベージ コレクターが解放することを妨げません。
スコープが閉じられると、まだ有効なすべてのポインターは自動的に割り当て解除されますが、すでにガベージ コレクションされたポインターは無視されます。
パブリックコンストラクター
パブリックメソッド
空所 | アタッチ(ポインタ ポインタ) このスコープにポインターをアタッチします。 |
同期ボイド | 近い() |
空所 | デタッチ(ポインタ ポインタ) このスコープからポインターを切り離します。 |
継承されたメソッド
パブリックコンストラクター
public WeakPointerScope ()
パブリックメソッド
public voidattach (ポインタポインタ)
このスコープにポインターをアタッチします。
スコープにアタッチされたポインターは、ガベージ コレクターによってすでに解放されていない限り、スコープが閉じられると自動的に解放されます。
このpointer
すでにこのスコープにアタッチされている場合、このメソッドは効果がありません。
パラメーター
ポインタ | アタッチするポインタ |
---|
投げる
IllegalStateException | そのスコープがすでに閉じられている場合 |
---|
public synchronized void close ()
public void detach (ポインタポインタ)
このスコープからポインターを切り離します。
スコープからポインターを切り離すと、スコープを閉じるときにそのメモリーが解放されなくなります。
このpointer
がこのスコープにアタッチされていない場合、このメソッドは効果がありません。
パラメーター
ポインタ | デタッチするポインタ |
---|
投げる
IllegalStateException | そのスコープがすでに閉じられている場合 |
---|