mexMakeArrayPersistent (C and Fortran)

Заставьте массив сохраниться после того, как файл MEX завершится

Синтаксис C

#include "mex.h"
void mexMakeArrayPersistent(mxArray *pm);

Синтаксис языка ФОРТРАН

#include "fintrf.h"
subroutine mexMakeArrayPersistent(pm)
mwPointer pm

Аргументы

pm

Указатель на mxArray созданный mxCreateфункция

Описание

По умолчанию, mxArray выделенный mxCreate* функция не является персистентной. Средство управления памятью MATLAB® автоматически освобождает нестойкий mxArray когда MEX-функция заканчивается. Если вы хотите mxArray чтобы сохраниться посредством нескольких вызовов MEX-функции, вызовите mexMakeArrayPersistent функция.

Предупреждение

Не присваивайте массив, созданный с mexMakeArrayPersistent функционируйте к plhs выходной аргумент файла MEX.

Примечание

Если вы создаете персистентный mxArray, вы ответственны за уничтожение его с помощью mxDestroyArray когда файл MEX очищен. Если вы не уничтожаете персистентный mxArray, MATLAB пропускает память. Смотрите mexAtExit чтобы видеть, как зарегистрировать, которая вызвана, когда файл MEX очищен. Смотрите mexLock чтобы видеть, как заблокировать ваш файл MEX так, чтобы он никогда не очищался.

Смотрите также

mexAtExit, mxDestroyArray, mexLock, mexMakeMemoryPersistent, и mxCreateФункции

Представлено до R2006a