Сохранение памяти, выделенной MATLAB, после завершения функции MEX
#include "mex.h" void mexMakeMemoryPersistent(void *ptr);
#include "fintrf.h" subroutine mexMakeMemoryPersistent(ptr) mwPointer ptr
По умолчанию память, выделенная MATLAB ®, не является постоянной, поэтому она освобождается автоматически по завершении функции MEX. Если требуется сохранить память, вызовитеmexMakeMemoryPersistent.
Примечание
При создании постоянной памяти она освобождается после сброса функции MEX. Если не освободить память, MATLAB утекает память. Чтобы освободить память, используйте mxFree. Посмотрите mexAtExit для просмотра способа регистрации функции, вызываемой при сбросе функции MEX. Посмотрите mexLock чтобы увидеть, как заблокировать функцию MEX так, чтобы она никогда не очищалась.