NativeMemory.AlignedRealloc(Void*, UIntPtr, UIntPtr) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
重要
この API は CLS 準拠ではありません。
指定したサイズとアラインメントのメモリブロックをバイト単位で再割り当てします。
public:
static void* AlignedRealloc(void* ptr, UIntPtr byteCount, UIntPtr alignment);
[System.CLSCompliant(false)]
public static void* AlignedRealloc (void* ptr, nuint byteCount, nuint alignment);
[System.CLSCompliant(false)]
public static void* AlignedRealloc (void* ptr, UIntPtr byteCount, UIntPtr alignment);
[<System.CLSCompliant(false)>]
static member AlignedRealloc : nativeptr<unit> * unativeint * unativeint -> nativeptr<unit>
パラメーター
- ptr
- Void*
以前に割り当てられたメモリ ブロック。
- byteCount
-
UIntPtr
nuint
unativeint
割り当てるブロックのサイズ (バイト単位)。
- alignment
-
UIntPtr
nuint
unativeint
割り当てるブロックのアラインメント (バイト単位)。 これは の 2
累乗である必要があります。
戻り値
再割り当てされたメモリ ブロックへのポインター。
- 属性
例外
alignment
は 2 の累乗ではありません。
失敗したメモリalignment
の再割り当てbyteCount
。
注釈
このメソッドは、 が null
の場合ptr
と同様にAlignedAlloc(UIntPtr, UIntPtr)機能します。
このメソッドは 0
を 許可byteCount
し、逆参照してはならない有効なポインターを返し、メモリ リークを回避するために free に渡す必要があります。
このメソッドは、Win32 などの _aligned_realloc
プラットフォーム依存のアラインされた再割り当て API です。
このメソッドは、 または Realloc(Void*, UIntPtr)とFree(Void*)互換性がありません。 代わりに、 または を呼び出しますAlignedFree(Void*)AlignedRealloc(Void*, UIntPtr, UIntPtr)。
適用対象
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示