CriticalHandle Kelas

Definisi

Mewakili kelas pembungkus untuk menangani sumber daya.

public ref class CriticalHandle abstract : IDisposable
public ref class CriticalHandle abstract : System::Runtime::ConstrainedExecution::CriticalFinalizerObject, IDisposable
[System.Security.SecurityCritical]
public abstract class CriticalHandle : IDisposable
public abstract class CriticalHandle : System.Runtime.ConstrainedExecution.CriticalFinalizerObject, IDisposable
[System.Security.SecurityCritical]
public abstract class CriticalHandle : System.Runtime.ConstrainedExecution.CriticalFinalizerObject, IDisposable
[<System.Security.SecurityCritical>]
type CriticalHandle = class
    interface IDisposable
type CriticalHandle = class
    inherit CriticalFinalizerObject
    interface IDisposable
[<System.Security.SecurityCritical>]
type CriticalHandle = class
    inherit CriticalFinalizerObject
    interface IDisposable
Public MustInherit Class CriticalHandle
Implements IDisposable
Public MustInherit Class CriticalHandle
Inherits CriticalFinalizerObject
Implements IDisposable
Warisan
CriticalHandle
Warisan
Turunan
Atribut
Penerapan

Keterangan

Kelas CriticalHandle ini mirip SafeHandle dengan kelas , kecuali yang SafeHandle mengimplementasikan penghitungan referensi. Anda dapat menggunakan CriticalHandle alih-alih mengatasi pertimbangan SafeHandle performa ketika Anda dapat memberikan sinkronisasi yang diperlukan secara lebih efisien sendiri.

CriticalHandle Karena kelas tidak melakukan penghitungan referensi, kelas tidak memberikan perlindungan dari serangan keamanan daur ulang handel. Karena algoritma penghitungan referensi secara implisit menserialisasikan operasi, sejumlah keamanan utas juga hilang. Jika Anda memanggil IDisposable.Dispose metode atau Close saat operasi yang menggunakan handel luar biasa pada utas lain, atau jika Anda memanggil IDisposable.Dispose atau Close dari dua utas pada saat yang sama, hasilnya tidak deterministik. Kelas CriticalHandle ini masih memberikan jaminan finalisasi kritis yang disediakan oleh CriticalFinalizerObject kelas .

Konstruktor

CriticalHandle(IntPtr)

Menginisialisasi instans CriticalHandle baru kelas dengan nilai handel yang ditentukan tidak valid.

Bidang

handle

Menentukan handel yang akan dibungkus.

Properti

IsClosed

Mendapatkan nilai yang menunjukkan apakah handel ditutup.

IsInvalid

Saat ditimpa di kelas turunan, mendapatkan nilai yang menunjukkan apakah nilai handel tidak valid.

Metode

Close()

Menandai handel untuk merilis dan membebaskan sumber daya.

Dispose()

Merilis semua sumber daya yang CriticalHandledigunakan oleh .

Dispose(Boolean)

Merilis sumber daya tidak terkelola yang digunakan oleh CriticalHandle kelas yang menentukan apakah akan melakukan operasi pembuangan normal.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Finalize()

Membebaskan semua sumber daya yang terkait dengan handel.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ReleaseHandle()

Ketika ditimpa di kelas turunan, menjalankan kode yang diperlukan untuk membebaskan handel.

SetHandle(IntPtr)

Mengatur handel ke handel yang sudah ada sebelumnya yang ditentukan.

SetHandleAsInvalid()

Menandai handel sebagai tidak valid.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga