5.2 プロセスの制御
- void Py_FatalError (char *message)
-
致命的エラーのメッセージを表示してプロセスを始末する。
後片付けは行われない。この関数はPythonインタープリタを
使い続けることを危険にする状況が検出されたとき、
例えばオブジェクトの管理が壊れていると思われるときにだけ
起動されるべきだ。
Unixでは、coreファイルを作ろうとする
標準C言語ライブラリ関数abort()が
呼ばれる。
- void Py_Exit (int status)
-
現在のプロセスを終了する。これは
Py_Finalize()を呼び出し、
そして標準C言語ライブラリ関数
exit(status)を呼ぶ。
- int Py_AtExit (void (*func) ())
-
Py_Finalize()に呼ばれる
後片付け関数を登録する。後片付け関数は引数なしで呼ばれる。
そして値を返さないべきである。
高々32個の後片付け関数を登録できる。
登録に成功するとPy_AtExit()は
0を返す。
失敗のときは-1を返す。
最後に登録された後片付け関数が最初に呼ばれる。
それぞれの後片付け関数は高々1回呼ばれる。
Python内部の終了処理は後片付け関数の前に完了しているので、
PytnonのAPIはfuncによって呼ばれるべきではない。