注册函数,以调用时,MEX函数清除或MATLAB终止
# include”墨西哥人。h" int mexAtExit(void (*ExitFcn)(void));
# include“fintrf。h" integer*4 mexAtExit(ExitFcn)子例程ExitFcn()
ExitFcn
指向要在退出时运行的函数的指针
总是返回0
。
使用mexAtExit
在清除MEX函数或终止MATLAB之前注册要调用的函数®。mexAtExit
让您的MEX函数有机会执行诸如释放持久内存和关闭文件等任务。其他典型的任务包括关闭流或套接字。
每个MEX函数一次只能注册一个活动退出函数。如果你叫mexAtExit
不止一次,然后MATLAB使用ExitFcn
从最近的mexAtExit
调用作为退出函数。
如果一个MEX函数被锁定,那么您就不能清除MEX文件。因此,如果尝试清除锁定的MEX文件,则MATLAB不会调用ExitFcn
。
在Fortran中,声明ExitFcn
作为外部
在调用的Fortran例程中mexAtExit
如果它不在文件的范围内。
在C MEX文件中,抛出异常ExitFcn
导致MATLAB崩溃。