System.SysReallocMem
Delphi
function SysReallocMem(P: Pointer; Size: NativeInt): Pointer;
C++
extern DELPHI_PACKAGE void * __fastcall SysReallocMem(void * P, NativeInt Size);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | GETMEM.INC System.hpp |
System | System |
説明
Pointer
パラメータが指す値を保持しつつ、指定バイト数へのポインタを返します。
カスタム メモリ マネージャを実装する場合は、SysReallocMem を使用して、動的に確保されたメモリのブロックのサイズを変更します。P
で指すメモリ ブロックを拡張できない場合、SysReallocMem は、参照された既存のメモリに格納されている値を新たに割り当てたメモリにコピーした後、既存のメモリを解放し、新しいメモリ ブロックを返します。 Size
が P で指すバイト数よりも少ない場合、最初の Size 分のバイトだけが保持されます。そうでなければ、P で指すメモリのすべての値が、新たに確保されたメモリに保持されます。
メモ: System ユニットは、SysReallocMem の制限された実装を提供します。 カスタム メモリ マネージャが、参照カウントと、プロセス間で共有できるオブジェクトをサポートする必要がある場合、ShareMem ユニットによって提供される、SysReallocMem の実装を使用します。 使用する際、一貫したメモリ管理モデルを実現するには、ShareMem をプロジェクト ファイルの最初のユニットにしなければなりません。
警告: これは内部関数であり、アプリケーションから直接呼び出してはなりません。 代わりに、ReallocMem 関数を使用してください。