イフコンピュータ > IF/Prolog > マニュアル > IF/Prolog V4.1 マニュアル > IF/Prolog V4.1 レファレンスマニュアル > バージョン3から4への移行 > interrupt, interrupted

interrupt, interrupted

IF/Prolog by Siemens
MINERVA superseeded IF/Prolog. Please see http://www.ifcomputer.co.jp/MINERVA for details.

We discontinued to sell IF/Prolog Dec 31. 2003. For current customers, we continue to provide professional support for IF/Prolog until Dec 31, 2008.

interrupt(-旧スイッチ,+新スイッチ) interrupted

プログラムの実行は、通常は割り込み文字CTRL-CあるいはBREAKをタイプすることで止められますが、これはオペレ−ティングシステムによって異なります。

interrupt/2は、割り込みモ−ドをテストしたり変更します。使用可能なモ−ドは、マニュアルとオ−トマチック(デフォルト)です。

マニュアルモ−ドでは、"interrupt(_,off)"で設定されます。また割り込みが起こると、割り込みフラグが設定されますが、プログラムの実行は止まりません(interrupted/0を参照して下さい)。

オ−トマチックモ−ドはデフォルトですが、"interrupt(Old,on)"で設定することもできます。割り込みが起こると、IF/Prologは"raise_error(interrupt)"を呼び出します。現在のゴ−ルの実行が取り消され、ユ−ザはインタプリタのプロンプト"?-"に戻ります。

interrupted/0は、割り込みフラグが設定されていてモ−ドがマニュアルの場合に成功します。また、割り込みフラグをリセットします。 error_protect/2で現在のゴ−ルが呼び出されると、その例外処理の第1引数がエラ−メッセ−ジ"interrupt"に単一化されます。

?- interrupt(_,off), repeat, write('waiting '), interrupted, write(' O U C H !\n'). waiting waiting waiting wating . . . ^C O U C H ! yes ?- interrupt(_,on), error_protect( (repeat,write('waiting '),fail), write(Message) ). waiting waiting waiting waiting . . . ^C interrupt Message = interrupt yes ?- _

on/off_expected スイッチはonでもoffでもない。

document: http://www.ifcomputer.co.jp/IFProlog/Manuals/v4.1/reference/compaintro/interrup/print_jp.html
published 2008/12/1 update 1995/11/6 (c) 1996-2006 IF Computer Japan
IF Computer 〒113-0022 Tel 03-5814-3352 start (AT) ifcomputer.com
Customer Support 東京都文京区千駄木5-28-2   http://www.ifcomputer.co.jp
戻る> managed with ubiCMS