SafeBuffer Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cuidado
SafeBuffer may be unavailable in future releases.
Fornece um buffer de memória controlado que pode ser usado para leitura e gravação. Tentativas de acessar a memória fora do buffer controlado (falhas e estouros) geram exceções.
public ref class SafeBuffer abstract : System::Runtime::InteropServices::SafeHandle
public ref class SafeBuffer abstract : Microsoft::Win32::SafeHandles::SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
public abstract class SafeBuffer : System.Runtime.InteropServices.SafeHandle
public abstract class SafeBuffer : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
public abstract class SafeBuffer : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
[System.Obsolete("SafeBuffer may be unavailable in future releases.")]
public abstract class SafeBuffer : System.Runtime.InteropServices.SafeHandle
[<System.Security.SecurityCritical>]
type SafeBuffer = class
inherit SafeHandle
type SafeBuffer = class
inherit SafeHandleZeroOrMinusOneIsInvalid
[<System.Security.SecurityCritical>]
type SafeBuffer = class
inherit SafeHandleZeroOrMinusOneIsInvalid
[<System.Security.SecurityCritical>]
[<System.Obsolete("SafeBuffer may be unavailable in future releases.")>]
type SafeBuffer = class
inherit SafeHandle
Public MustInherit Class SafeBuffer
Inherits SafeHandle
Public MustInherit Class SafeBuffer
Inherits SafeHandleZeroOrMinusOneIsInvalid
- Herança
- Herança
- Herança
- Derivado
- Atributos
Comentários
Você deve chamar o SafeBuffer.Initialize método antes de usar qualquer instância do SafeBuffer. Para evitar corridas ao armazenar uma instância de um SafeBuffer objeto em uma variável estática, você deve usar uma das seguintes abordagens:
Crie um bloqueio ao publicar o SafeBuffer.
Crie uma variável local, inicialize o SafeBuffere atribua o SafeBuffer à variável estática, por exemplo, usando o Interlocked.CompareExchange método .
Observação
As atribuições em um construtor de classe estática são implicitamente bloqueadas.
Construtores
SafeBuffer(Boolean) |
Obsoleto.
Cria uma nova instância da classe SafeBuffer e especifica se o identificador do buffer deve ser liberado com confiança. |
Campos
handle |
Obsoleto.
Especifica o identificador a ser encapsulado. (Herdado de SafeHandle) |
Propriedades
ByteLength |
Obsoleto.
Obtém o tamanho do buffer, em bytes. |
IsClosed |
Obsoleto.
Obtém um valor que indica se o identificador está fechado. (Herdado de SafeHandle) |
IsInvalid |
Obsoleto.
Obtém um valor que indica se o identificador é inválido. |
IsInvalid |
Obsoleto.
Obtém um valor que indica se o identificador é inválido. (Herdado de SafeHandleZeroOrMinusOneIsInvalid) |
Métodos
AcquirePointer(Byte*) |
Obsoleto.
Obtém um ponteiro de um objeto SafeBuffer para um bloco de memória. |
Close() |
Obsoleto.
Marca o identificador de liberação de recursos. (Herdado de SafeHandle) |
DangerousAddRef(Boolean) |
Obsoleto.
Incrementa manualmente o contador de referências em instâncias do SafeHandle. (Herdado de SafeHandle) |
DangerousGetHandle() |
Obsoleto.
Retorna o valor do campo handle. (Herdado de SafeHandle) |
DangerousRelease() |
Obsoleto.
Diminui manualmente o contador de referência em uma instância SafeHandle. (Herdado de SafeHandle) |
Dispose() |
Obsoleto.
Libera todos os recursos usados pela classe SafeHandle. (Herdado de SafeHandle) |
Dispose(Boolean) |
Obsoleto.
Libera os recursos não gerenciados usados pela classe SafeHandle que especifica se deve executar uma operação de descarte normal. (Herdado de SafeHandle) |
Equals(Object) |
Obsoleto.
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Obsoleto.
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obsoleto.
Obtém o Type da instância atual. (Herdado de Object) |
Initialize(UInt32, UInt32) |
Obsoleto.
Especifica o tamanho de alocação do buffer de memória usando o número especificado de elementos e o tamanho do elemento. É necessário chamar esse método antes de usar a instância SafeBuffer. |
Initialize(UInt64) |
Obsoleto.
Define o tamanho de alocação da região de memória em bytes. É necessário chamar esse método antes de usar a instância SafeBuffer. |
Initialize<T>(UInt32) |
Obsoleto.
Define o tamanho de alocação da região de memória especificando o número dos tipos de valor. É necessário chamar esse método antes de usar a instância SafeBuffer. |
MemberwiseClone() |
Obsoleto.
Cria uma cópia superficial do Object atual. (Herdado de Object) |
Read<T>(UInt64) |
Obsoleto.
Lê um tipo de valor na memória no deslocamento especificado. |
ReadArray<T>(UInt64, T[], Int32, Int32) |
Obsoleto.
Lê o número de tipos de valor especificado do início da memória no deslocamento e os grava no início de uma matriz no índice. |
ReadSpan<T>(UInt64, Span<T>) |
Obsoleto.
Lê tipos de valor da memória começando no deslocamento e os grava em um intervalo. O número de tipos de valor que serão lidos é determinado pelo comprimento do intervalo. |
ReleaseHandle() |
Obsoleto.
Quando substituído em uma classe derivada, executa o código necessário para liberar o identificador. (Herdado de SafeHandle) |
ReleasePointer() |
Obsoleto.
Libera um ponteiro que foi obtido pelo método AcquirePointer(Byte*). |
SetHandle(IntPtr) |
Obsoleto.
Define o identificador para o identificador pré-existente especificado. (Herdado de SafeHandle) |
SetHandleAsInvalid() |
Obsoleto.
Marca um identificador como não mais usado. (Herdado de SafeHandle) |
ToString() |
Obsoleto.
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Write<T>(UInt64, T) |
Obsoleto.
Grava um tipo de valor na memória no local determinado. |
WriteArray<T>(UInt64, T[], Int32, Int32) |
Obsoleto.
Grava o número de tipos de valor especificado em um local de memória lendo bytes começando do local especificado na matriz de entrada. |
WriteSpan<T>(UInt64, ReadOnlySpan<T>) |
Obsoleto.
Grava os tipos de valor de um intervalo somente leitura em um local de memória. |