Cleaner クラス

定義

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

[Android.Runtime.Register("java/lang/ref/Cleaner", ApiSince=33, DoNotGenerateAcw=true)]
public sealed class Cleaner : Java.Lang.Object
[<Android.Runtime.Register("java/lang/ref/Cleaner", ApiSince=33, DoNotGenerateAcw=true)>]
type Cleaner = class
    inherit Object
継承
属性

注釈

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

クリーニング アクションは、オブジェクトがファントムに到達可能になったことがクリーナーに通知された後に実行 #register(Object object, Runnable action) registered 。 クリーナーは、到達可能性が変化したときに通知を受け取るために PhantomReferenceReferenceQueue を使用します。

各クリーナーは独立して動作し、保留中のクリーニング アクションを管理し、クリーナーが使用されなくなったときにスレッド処理と終了を処理します。 オブジェクト参照と対応するクリーニング アクションを登録すると、 Cleanable Cleanableが返されます。 最も効率的な使用は、オブジェクトが閉じられたり不要になったりしたときに、 Cleanable#clean clean メソッドを明示的に呼び出す方法です。 クリーニング アクションは、オブジェクトが既に明示的にクリーンアップされていない限り、ファントムに到達可能になったときに最大 1 回呼び出される Runnable です。 クリーニング アクションは、登録されているオブジェクトを参照してはならないことに注意してください。 その場合、オブジェクトはファントムに到達できなくなり、クリーニング アクションは自動的に呼び出されません。

クリーニング アクションの実行は、クリーナーに関連付けられているスレッドによって実行されます。 スレッドは、登録されているすべてのクリーニング アクションが完了し、ガベージ コレクターによってクリーナー自体が回収されるまで実行されます。

System#exit(int) System.exit中のクリーナーの動作は実装固有です。 クリーニング アクションが呼び出されるかどうかに関連する保証はありません。

特に明記されていない限り、このクラスのコンストラクターまたはメソッドに null 引数を渡すと、 java.lang.NullPointerException NullPointerException がスローされます。

9 に追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
JniPeerMembers

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)
ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)

メソッド

名前 説明
Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
Create()

新しい Cleanerを返します。

Create(IThreadFactory)

CleanerThreadを使用して新しいThreadFactoryを返します。

Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
Equals(Object)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
JavaFinalize()

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
Register(Object, IRunnable)

オブジェクトがファントムに到達可能になったときに実行するオブジェクトとクリーニング アクションを登録します。

SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
IJavaPeerable.Finalized()

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

Cleaner は、一連のオブジェクト参照と対応するクリーニング アクションを管理します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象