Main Content

mexAtExit (C および Fortran)

MEX 関数のクリア時または MATLAB の終了時に呼び出す関数を登録

C 構文

#include "mex.h"
int mexAtExit(void (*ExitFcn)(void));

Fortran 構文

#include "fintrf.h"
integer*4 mexAtExit(ExitFcn)
subroutine ExitFcn()

説明

mexAtExit を使用して、MEX 関数をクリアするか MATLAB® を終了する直前に、呼び出す関数を登録します。mexAtExit は、MEX 関数が永続的なメモリを解放したり、ファイルを閉じるなどのタスクを実行できるようにします。他の一般的なタスクには、ストリームやソケットを閉じる操作があります。

各 MEX 関数は、アクティブな終了関数を一度に 1 つのみ登録できます。関数 mexAtExit を複数回呼び出した場合、MATLAB では最新の mexAtExit 呼び出しからの ExitFcn を終了関数として使用します。

MEX 関数がロックされている場合、MEX ファイルをクリアすることはできません。そのため、ロックされている MEX ファイルをクリアしようとしても、MATLAB は ExitFcn を呼び出しません。

Fortran では、ファイルのスコープ内にない場合、mexAtExit を呼び出す Fortran ルーチン内で ExitFcnexternal として宣言します。

注意

C MEX ファイルでは、ExitFcn で例外がスローされると MATLAB がクラッシュします。

入力引数

すべて展開する

終了時に実行する関数。ポインターとして指定します。

出力引数

すべて展開する

常に 0 が返されます。

matlabroot/extern/examples/mex の次の例を参照してください。

バージョン履歴

R2006a より前に導入