使内存分配为MATLAB在MEX函数完成后保持
#include "mex.h" void mexmakemorypersistent (void *ptr);
#include "fintrf.h"子例程mexMakeMemoryPersistent(ptr
默认情况下,内存由MATLAB分配®是非持久的,因此当MEX函数完成时,它会自动释放。如果你想保持记忆,就打电话mexMakeMemoryPersistent
.
请注意
如果创建了持久内存,则需要在清除MEX函数时释放它。如果不释放内存,则MATLAB会泄漏内存。要释放内存,请使用mxFree
.看到mexAtExit
查看如何注册在清除MEX函数时调用的函数。看到mexLock
查看如何锁定MEX函数,使其永远不会被清除。