Marks the handle for releasing and freeing resources.
Assembly: mscorlib (in mscorlib.dll)
Calling the or Dispose method allows the resources to be freed. Unlike the SafeHandle class, this will always happen immediately since there is no reference count to indicate that other threads are using this handle. Therefore, you must employ a synchronization mechanism to ensure it is safe to call the method. Although most classes that use the CriticalHandle class do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). In this case, the class can provide a finalizer that is guaranteed to run before the CriticalHandle critical finalizer runs.
Note Always call or Dispose before you release your last reference to the CriticalHandle object. Otherwise, the resources it is using will not be freed until the garbage collector calls the CriticalHandle object's Finalize method.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.