|
SOLUTIONS
|
MATHEMATICA MATHLINK C 関数
MLSetSignalHandler()
int MLSetSignalHandler(MLENV env, int s, void *sa)
オブジェクトsa で詳述されるUnix信号ハンドラ(処理)システムを信号s のために,MathLink ライブラリ信号処理構造の中にインストールする.
詳細詳細
- MLSetSignalHandler()は,Microsoft Windowsには作動しない.
- sa は,Unixのsigaction structのポインタである.sigaction構造に関する詳細については,ほとんどのUnixやUnixに似たシステム上にあるヘッダファイルsignal.hを参照するとよい.
- MLSetSignalHandler()は,エラーがない場合にはMLEOKを返し,エラーがある場合にはmathlink.hにリストされている他のエラーコードの一つを返す.
- MLSetSignalHandler()はMathLink ヘッダファイルmathlink.hの中で宣言される.
例題例題すべて開くすべて閉じる
例 (1)例 (1)
#include <signal.h>
#include "mathlink.h"
void app_signal_handler(int signum)
{
/* ... */
}
/* set a signal handler in the MathLink environment */
void f(MLENV ep)
{
struct sigaction sa;
int err;
sa.sa_handler = (void (*)(int))app_signal_handler;
sigemptyset(&sa.sa_mask);
sa.sa_flags = 0;
/* install app_signal_handler for SIGHUP */
err = MLSetSignalHandler(ep, SIGHUP, (void *)&sa);
if(err != MLEOK)
{ /* unable to set the signal handler in ep */ }
}
Mathematica 9 is now available!
New to Mathematica?
Find your learning path »
Have a question?
Ask support »
