Marshal.ReAllocCoTaskMem(IntPtr, Int32) Method

Definition

Resizes a block of memory previously allocated with AllocCoTaskMem(Int32).

C#
[System.Security.SecurityCritical]
public static IntPtr ReAllocCoTaskMem(IntPtr pv, int cb);
C#
public static IntPtr ReAllocCoTaskMem(IntPtr pv, int cb);

Parameters

pv
IntPtr

A pointer to memory allocated with AllocCoTaskMem(Int32).

cb
Int32

The new size of the allocated block.

Returns

IntPtr

An integer representing the address of the reallocated block of memory. This memory must be released with FreeCoTaskMem(IntPtr).

Attributes

Exceptions

There is insufficient memory to satisfy the request.

Remarks

ReAllocCoTaskMem is one of two memory reallocation methods in the Marshal class. (ReAllocHGlobal is the other.) The beginning of the reallocated memory content is the same as the original content; however, the entire memory block can be in a different location. This method exposes the COM CoTaskMemRealloc function, which is referred to as the COM task memory allocator.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

See also