PhantomReference Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali.
[Android.Runtime.Register("java/lang/ref/PhantomReference", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public class PhantomReference : Java.Lang.Ref.Reference
[<Android.Runtime.Register("java/lang/ref/PhantomReference", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
type PhantomReference = class
inherit Reference
- Warisan
- Atribut
Keterangan
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. Referensi phantom paling sering digunakan untuk menjadwalkan tindakan pembersihan pasca-mortem.
Misalkan pengumpul sampah menentukan pada titik waktu tertentu bahwa objek dapat dijangkau oleh phantom. Pada saat itu akan secara atom menghapus semua referensi phantom ke objek itu dan semua referensi phantom ke objek lain yang dapat dijangkau phantom dari mana objek itu dapat dijangkau. Pada saat yang sama atau di lain waktu akan mengantrekan referensi phantom yang baru dibersihkan yang terdaftar dengan antrean referensi.
Untuk memastikan bahwa objek yang dapat direklamasi tetap demikian, referensi referensi phantom mungkin tidak diambil: Metode get referensi phantom selalu mengembalikan null.
Ditambahkan dalam 1.2.
Dokumentasi Java untuk java.lang.ref.PhantomReference.
Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.
Konstruktor
| Nama | Deskripsi |
|---|---|
| PhantomReference(IntPtr, JniHandleOwnership) |
Konstruktor yang digunakan saat membuat representasi terkelola objek JNI; dipanggil oleh runtime. |
| PhantomReference(Object, ReferenceQueue) |
Membuat referensi phantom baru yang mengacu pada objek yang diberikan dan terdaftar dengan antrean yang diberikan. |
Properti
| Nama | Deskripsi |
|---|---|
| Class |
Mengembalikan kelas runtime dari . |
| Handle |
Handel ke instans Android yang mendasar. (Diperoleh dari Object) |
| IsEnqueued |
Menguji apakah objek referensi ini berada dalam antrean terkait, jika ada. (Diperoleh dari Reference) |
| JniIdentityHashCode |
Mendapatkan kode hash identitas yang ditetapkan ke Java peer ini oleh runtime interop. (Diperoleh dari Object) |
| JniManagedPeerState |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| JniPeerMembers |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
| PeerReference |
Mendapatkan referensi objek JNI untuk peer Java ini. (Diperoleh dari Object) |
| ThresholdClass |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
| ThresholdType |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
Metode
| Nama | Deskripsi |
|---|---|
| Clear() |
Menghapus objek referensi ini. (Diperoleh dari Reference) |
| Clone() |
Membuat dan mengembalikan salinan objek ini. (Diperoleh dari Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| Dispose() |
Merilis sumber daya yang dipegang oleh rekan Java ini. (Diperoleh dari Object) |
| Dispose(Boolean) |
Merilis sumber daya yang dipegang oleh rekan Java ini. (Diperoleh dari Object) |
| DisposeUnlessReferenced() |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| Enqueue() |
Menambahkan objek referensi ini ke antrean tempat objek didaftarkan, jika ada. (Diperoleh dari Reference) |
| Equals(Object) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| Equals(Object) |
Menunjukkan apakah beberapa objek lain "sama dengan" yang satu ini. (Diperoleh dari Object) |
| Get() |
Mengembalikan referensi objek referensi ini. (Diperoleh dari Reference) |
| GetHashCode() |
Mengembalikan nilai kode hash untuk objek . (Diperoleh dari Object) |
| JavaFinalize() |
Dipanggil oleh pengumpul sampah pada objek ketika pengumpulan sampah menentukan bahwa tidak ada lagi referensi ke objek. (Diperoleh dari Object) |
| Notify() |
Membangunkan satu utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
| NotifyAll() |
Membangunkan semua utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
| RefersTo(Object) |
Menguji apakah referensi objek referensi ini adalah |
| SetHandle(IntPtr, JniHandleOwnership) |
Mengatur properti Handle. (Diperoleh dari Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| ToArray<T>() |
Membuat array terkelola dari pembungkus array Java ini. (Diperoleh dari Object) |
| ToString() |
Mengembalikan representasi string objek. (Diperoleh dari Object) |
| UnregisterFromRuntime() |
Membatalkan pendaftaran peer Java ini dari runtime interop. (Diperoleh dari Object) |
| Wait() |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <diberitahu></em> atau <em>terganggu</em>. (Diperoleh dari Object) |
| Wait(Int64, Int32) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu. (Diperoleh dari Object) |
| Wait(Int64) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IJavaPeerable.Disposed() |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| IJavaPeerable.Finalized() |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. (Diperoleh dari JavaObject) |
Metode Ekstensi
| Nama | Deskripsi |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Mendapatkan nama JNI dari jenis instans |
| JavaAs<TResult>(IJavaPeerable) |
Cobalah untuk memaksa |
| JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Objek referensi Phantom, yang diantrekan setelah pengumpul menentukan bahwa referensi mereka mungkin direklamasi kembali. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Cobalah untuk memaksa |