シグナル



unix:signal signal func &optional option [関数]

signalに対してシグナルハンドラーfuncをインストールする。 BSD4.2システムにおいて、システムコール処理の間に捕まえたシグナルは、 システムコールのリトライに起因する。 これは、もしその処理がシステムコールの呼び出しを発行するならば、 シグナルを無視することを意味する。 もし、option=2が指定されたならば、シグナルはsystem-5の手法で 処理される。そのシグナルは、システムコールの失敗に起因する。


unix:kill pid signal [関数]

pidで名前付けされるプロセスにsignalを送る。


unix:pause [関数]

シグナルが到着するまでこのプロセスの実行を一時停止する。


unix:alarm time [関数]

time秒後にアラーム時計シグナル(SIGALRM 14)を送る。 time=0でunix:alarmを呼び出すと、アラーム時計をリセットする。


unix:ualarm time [関数]

timeがマイクロ秒単位であることを除いてunix:alarmと同じである。 ualarmは、Solaris2あるいはSystem5系のシステムに実現されていない。


unix:getitimer timer [関数]

timerは、0 (ITIMER_REAL), 1 (ITIMER_VIRTUAL), 2(ITIMER_PROF)の内の1つである。 秒単位の時間(timer)と間隔(interval)の2つの要素を持つリストを返す。


unix:setitimer timer value interval [関数]
timervalueintervalを設定する。 timerは、0 (ITIMER_REAL), 1 (ITIMER_VIRTUAL), 2(ITIMER_PROF)の内の1つである。 ITIMER_REALは、valueが終了したとき、SIGALRMを発行する。 ITIMER_VIRTUALは、SIGVTALRMを発行し、 ITIMER_PROFは、SIGPROFを発行する。


unix:select inlist outlist exceptlist timeout [関数]

inlist, outlistexceptlistは、ファイルディスクリプタ を示すビットベクトルである。そのファイルディスクリプタの入出力イベント は、テストされなければならない。 例えば、もしinlist=#b0110outlist=#b100exceptlist=NILであるなら、 fd=1あるいはfd=2で読み込み可能かあるいはfd=2で書き込み可能であるかどうかをテストする。 timeoutは、unix:selectが待つために許される秒数を指定する。 inlistで指定されているポートの1つに入力データが現れるかあるいは outlistに指定されるポートの1つに書き込み可能となるかあるいは exceptlistで指定されるポートの1つに例外条件が起こるとすぐに unix:selectは、inlist, outlist, exceptlistのそれぞれにおいて アクセス可能なポートとして設定されたポートの中で、入力処理可能なポート番号を返す。


unix:select-read-fd read-fdset timeout [関数]

入出力の選択は、ふつう入力処理のときのみ意味がある。 unix:select-read-fdは、 select fdset nil nil timeoutの速記法である。 read-fdsetは、ビットベクトルでなく、設定された読み込みfdを指定する整数である。


2016-04-05