mexMakeArrayPersistent (C および Fortran)
MEX ファイルの完了後も配列を存続させる
C 構文
#include "mex.h" void mexMakeArrayPersistent(mxArray *pm);
Fortran 構文
#include "fintrf.h" subroutine mexMakeArrayPersistent(pm) mwPointer pm
説明
既定の設定では、関数 mxCreate
* によって割り当てられている mxArray
は存続しません。MATLAB® メモリ管理機能により、存続しない mxArray
は MEX 関数の完了時に自動的に解放されます。MEX 関数を複数回呼び出す間に mxArray
を存続させる場合は、関数 mexMakeArrayPersistent
を呼び出します。
警告
関数 mexMakeArrayPersistent
で作成された配列を、MEX ファイルの plhs
出力引数に割り当てないでください。
メモ
存続する mxArray
を作成した場合は、MEX ファイルをクリアする際に mxDestroyArray
を使用して破棄する必要があります。存続する mxArray
を破棄しないと、MATLAB でメモリ リークが発生します。MEX ファイルをクリアする際に呼び出される関数の登録方法は、mexAtExit
を参照してください。MEX ファイルをロックして決してクリアされないようにする方法は、mexLock
を参照してください。
入力引数
参考
mexAtExit
、mxDestroyArray
、mexLock
、mexMakeMemoryPersistent
、および mxCreate
*
バージョン履歴
R2006a より前に導入