CriticalHandle Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Egy burkolóosztályt jelöl az erőforrások kezeléséhez.
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
- Öröklődés
-
CriticalHandle
- Öröklődés
- Származtatott
- Attribútumok
- Megvalósítás
Megjegyzések
Az CriticalHandle osztály hasonló az SafeHandle osztályhoz, kivéve, ha SafeHandle a hivatkozásszámlálást valósítja meg. CriticalHandle SafeHandle Ahelyett, hogy teljesítménnyel kapcsolatos szempontokat kezelnél, akkor hatékonyabban biztosíthatja a szükséges szinkronizálást.
Mivel az CriticalHandle osztály nem végez hivatkozásszámlálást, nem nyújt védelmet az újrahasznosítási biztonsági támadások kezelése ellen. Mivel a hivatkozásszámláló algoritmus implicit módon szerializálja a műveleteket, bizonyos mértékű szálbiztonság is elveszik. Ha meghívja a IDisposable.DisposeClose metódust, miközben egy olyan művelet, amely a fogópontot használja, egy másik szálon ki van kapcsolva, vagy ha egyszerre hív vagy IDisposable.DisposeClose két szálból, az eredmények nem determinisztikusak. Az CriticalHandle osztály továbbra is biztosítja az osztály által biztosított garantált kritikus véglegesítést CriticalFinalizerObject .
Konstruktorok
| Name | Description |
|---|---|
| CriticalHandle(IntPtr) |
Inicializálja az osztály új példányát a CriticalHandle megadott érvénytelen leíró értékkel. |
Mezők
| Name | Description |
|---|---|
| handle |
Megadja a becsomagolandó fogópontot. |
Tulajdonságok
| Name | Description |
|---|---|
| IsClosed |
Beolvas egy értéket, amely jelzi, hogy a leíró bezárva van-e. |
| IsInvalid |
Ha egy származtatott osztályban felül van bírálva, egy értéket kap, amely jelzi, hogy a leíró értéke érvénytelen-e. |
Metódusok
| Name | Description |
|---|---|
| Close() |
Megjelöli az erőforrások felszabadítására és felszabadítására szolgáló leírót. |
| Dispose() |
Felszabadítja a .-hez használt összes erőforrást CriticalHandle. |
| Dispose(Boolean) |
Felszabadítja az osztály által CriticalHandle használt nem felügyelt erőforrásokat, amelyek meghatározzák, hogy normál megsemmisítési műveletet hajtanak-e végre. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| Finalize() |
Felszabadítja a leíróhoz társított összes erőforrást. |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ReleaseHandle() |
Ha egy származtatott osztályban felül van bírálva, végrehajtja a leíró felszabadításához szükséges kódot. |
| SetHandle(IntPtr) |
A fogópontot a megadott, már meglévő leíróra állítja. |
| SetHandleAsInvalid() |
Érvénytelenként jelöl meg egy fogópontot. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |