Marshal.ReAllocHGlobal(IntPtr, IntPtr) Método
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.
Redimensiona um bloco de memória alocado anteriormente com AllocHGlobal(IntPtr).
public:
static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb);
[System.Security.SecurityCritical]
public static IntPtr ReAllocHGlobal (IntPtr pv, IntPtr cb);
public static IntPtr ReAllocHGlobal (IntPtr pv, IntPtr cb);
[<System.Security.SecurityCritical>]
static member ReAllocHGlobal : nativeint * nativeint -> nativeint
static member ReAllocHGlobal : nativeint * nativeint -> nativeint
Public Shared Function ReAllocHGlobal (pv As IntPtr, cb As IntPtr) As IntPtr
Parâmetros
- pv
-
IntPtr
nativeint
Um ponteiro para a memória alocado com AllocHGlobal(IntPtr).
- cb
-
IntPtr
nativeint
O novo tamanho do bloco alocado. Isso não é um ponteiro; é a contagem de bytes que você está solicitando, conversão para digitar IntPtr. Se você passar um ponteiro, ele será tratado como um tamanho.
Retornos
nativeint
Um ponteiro para a memória realocada. Essa memória deve ser liberada usando FreeHGlobal(IntPtr).
- Atributos
Exceções
Não há memória suficiente para atender à solicitação.
Comentários
Importante
Esse alocador de memória nativa é uma API herdada que deve ser usada exclusivamente quando solicitada por APIs específicas do Win32 na plataforma Windows. Ao direcionar o .NET 6 ou posterior, use a classe NativeMemory em todas as plataformas para alocar memória nativa. Ao direcionar o .NET 6 ou anterior, use AllocCoTaskMem em todas as plataformas para alocar memória nativa.
ReAllocHGlobal é um dos dois métodos de API de realocação de memória na classe Marshal. (Marshal.ReAllocCoTaskMem é o outro.)
Esse método expõe a função
Aplica-se a
Confira também
- ReAllocCoTaskMem(IntPtr, Int32)
- FreeHGlobal(IntPtr)
- de Função GlobalAlloc