| 外部インタフェース/API リファレンス | ![]() |
Make an mxArray persist after the MEX-file completes
C 言語表示
#include "mex.h" void mexMakeArrayPersistent(mxArray *array_ptr);
引数
array_ptr
mxCreateルーチンによって作成されるmxArrayのポインタ。
詳細
デフォルトでは、mxCreateルーチンによって割り当てられたmxArrayは、固定ではありません。MATLABのメモリ管理機能は、MEX-ファイルを終了するときに固定でないmxArrayを自動的に開放します。複数回のMEX-ファイルの呼び出しを通してmxArrayを固定にしたい場合は、mexMakeArrayPersistentを呼び出さなければなりません。
注意
固定変数であるmxArrayを作成する場合、MEX-ファイルをクリアするときにユーザがそれを破棄する必要があります。mxArrayを破棄しなければ、MATLABはメモリリークします。MEX-ファイルがクリアされるときに呼び出される関数の登録方法については、mexAtExitを参照してください。MEX-ファイルがクリアされないようにロックする方法については、mexLockを参照してください。 |
参考
mexAtExit, mexLock, mexMakeMemoryPersistent, 関数mxCreate.
| mexLock | mexMakeMemoryPersistent | ![]() |