NativeMemory.AlignedAlloc(UIntPtr, UIntPtr) Metoda

Definice

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Přidělí zarovnaný blok paměti zadané velikosti a zarovnání v bajtech.

public:
 static void* AlignedAlloc(UIntPtr byteCount, UIntPtr alignment);
[System.CLSCompliant(false)]
public static void* AlignedAlloc(UIntPtr byteCount, UIntPtr alignment);
[System.CLSCompliant(false)]
public static void* AlignedAlloc(nuint byteCount, nuint alignment);
[<System.CLSCompliant(false)>]
static member AlignedAlloc : unativeint * unativeint -> nativeptr<unit>

Parametry

byteCount
UIntPtr

nuint

unativeint

Velikost bloku, který se má přidělit, je v bajtech.

alignment
UIntPtr

nuint

unativeint

Zarovnání v bajtech bloku, který se má přidělit. To musí být moc .2

Návraty

Void*

Ukazatel na přidělený zarovnaný blok paměti.

Atributy

Výjimky

alignment není moc dvou.

byteCount Přidělení paměti se alignment nezdařilo.

Poznámky

Tato metoda umožňuje byteCount0 a vrátí platný ukazatel, který by neměl být dereferenced a který by se měl předat, aby se zabránilo nevracení paměti.

Tato metoda je tenký obálka přes rozhraní API jazyka C aligned_alloc nebo rozhraní API pro přidělení závislé na platformě, jako _aligned_malloc je win32.

Tato metoda není kompatibilní s Free(Void*) nebo Realloc(Void*, UIntPtr). Místo toho zavolejte AlignedFree(Void*) nebo AlignedRealloc(Void*, UIntPtr, UIntPtr).

Platí pro