mexMakeArrayPersistent (C and Fortran)

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

Синтаксис C

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

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

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

Описание

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

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

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

Примечание

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

Входные параметры

развернуть все

Указатель на mxArray созданный mxCreate* функционируют в виде mxArray * в C или mwPointer на Фортране.

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

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

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