CriticalHandle Klas

Definitie

Vertegenwoordigt een wrapperklasse voor het verwerken van resources.

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
Overname
CriticalHandle
Overname
Afgeleid
Kenmerken
Implementeringen

Opmerkingen

De CriticalHandle klasse is vergelijkbaar met de SafeHandle klasse, behalve dat SafeHandle verwijzing tellen wordt geïmplementeerd. U kunt CriticalHandle in plaats van SafeHandle prestatieoverwegingen te verhelpen wanneer u de benodigde synchronisatie efficiënter kunt opgeven.

Omdat de CriticalHandle klasse geen verwijzing telt, biedt deze geen bescherming tegen het verwerken van beveiligingsaanvallen op het gebied van recycling. Omdat het algoritme voor het tellen van verwijzingen impliciet bewerkingen serialiseert, gaat ook een bepaalde hoeveelheid threadveiligheid verloren. Als u de IDisposable.Dispose of Close methode aanroept terwijl een bewerking die de ingang gebruikt, uitstekend is voor een andere thread, of als u tegelijkertijd of Close vanuit twee threads aanroeptIDisposable.Dispose, zijn de resultaten niet-deterministisch. De CriticalHandle klasse biedt nog steeds de gegarandeerde kritieke afronding die door de CriticalFinalizerObject klasse wordt geleverd.

Constructors

Name Description
CriticalHandle(IntPtr)

Initialiseert een nieuw exemplaar van de CriticalHandle klasse met de opgegeven ongeldige ingangswaarde.

Velden

Name Description
handle

Hiermee geeft u de greep die moet worden verpakt.

Eigenschappen

Name Description
IsClosed

Hiermee wordt een waarde opgehaald die aangeeft of de ingang is gesloten.

IsInvalid

Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde opgehaald die aangeeft of de ingangswaarde ongeldig is.

Methoden

Name Description
Close()

Markeert de ingang voor het vrijgeven en vrijmaken van resources.

Dispose()

Alle resources die worden gebruikt door de CriticalHandle.

Dispose(Boolean)

Publiceert de niet-beheerde resources die door de CriticalHandle klasse worden gebruikt en geeft aan of een normale verwijderingsbewerking moet worden uitgevoerd.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
Finalize()

Alle resources die aan de ingang zijn gekoppeld, worden vrijgemaakt.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ReleaseHandle()

Wanneer deze wordt overschreven in een afgeleide klasse, voert u de code uit die is vereist om de ingang vrij te maken.

SetHandle(IntPtr)

Hiermee stelt u de ingang in op de opgegeven bestaande ingang.

SetHandleAsInvalid()

Markeert een ingang als ongeldig.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Van toepassing op

Zie ook