5.2 Process Control
Keywords: api

#
5.2 Process Control

void `Py_FatalError` (char *message)
  Print a fatal error message and kill the process. No cleanup is performed. This function should only be invoked when a condition is detected that would make it dangerous to continue using the Python interpreter; e.g., when the object administration appears to be corrupted. On Unix, the standard C library function `abort()` is called which will attempt to produce a core file.

void `Py_Exit` (int status)
  Exit the current process. This calls `Py_Finalize()` and then calls the standard C library function `exit(status)`.

int `Py_AtExit` (void (*func) ())
  Register a cleanup function to be called by `Py_Finalize()`. The cleanup function will be called with no arguments and should return no value. At most 32 cleanup functions can be registered. When the registration is successful, `Py_AtExit()` returns `0`; on failure, it returns `-1`. The cleanup function registered last is called first. Each cleanup function will be called at most once. Since Python's internal finallization will have completed before the cleanup function, no Python APIs should be called by func.