summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2010-10-17 10:51:45 (GMT)
committerGeorg Brandl <georg@python.org>2010-10-17 10:51:45 (GMT)
commit6f4e68d82c2009c2a297f25a8a4896f0d1a8e66d (patch)
tree7af9670e76222c123437cd1aed4ff95fb9f60c8c
parenta192828ea138189b9abfbe3912c62e8c0bb4319f (diff)
downloadcpython-6f4e68d82c2009c2a297f25a8a4896f0d1a8e66d.zip
cpython-6f4e68d82c2009c2a297f25a8a4896f0d1a8e66d.tar.gz
cpython-6f4e68d82c2009c2a297f25a8a4896f0d1a8e66d.tar.bz2
#5962: clarify sys.exit() vs. threads.
-rw-r--r--Doc/library/os.rst6
-rw-r--r--Doc/library/sys.rst32
2 files changed, 22 insertions, 16 deletions
diff --git a/Doc/library/os.rst b/Doc/library/os.rst
index c8e5b96..cb9d9c4 100644
--- a/Doc/library/os.rst
+++ b/Doc/library/os.rst
@@ -1576,15 +1576,15 @@ to be ignored.
.. function:: _exit(n)
- Exit to the system with status *n*, without calling cleanup handlers, flushing
+ Exit the process with status *n*, without calling cleanup handlers, flushing
stdio buffers, etc.
Availability: Unix, Windows.
.. note::
- The standard way to exit is ``sys.exit(n)``. :func:`_exit` should normally only
- be used in the child process after a :func:`fork`.
+ The standard way to exit is ``sys.exit(n)``. :func:`_exit` should
+ normally only be used in the child process after a :func:`fork`.
The following exit codes are defined and can be used with :func:`_exit`,
although they are not required. These are typically used for system programs
diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst
index 7b44c86..6540311 100644
--- a/Doc/library/sys.rst
+++ b/Doc/library/sys.rst
@@ -180,19 +180,25 @@ always available.
Exit from Python. This is implemented by raising the :exc:`SystemExit`
exception, so cleanup actions specified by finally clauses of :keyword:`try`
- statements are honored, and it is possible to intercept the exit attempt at an
- outer level. The optional argument *arg* can be an integer giving the exit
- status (defaulting to zero), or another type of object. If it is an integer,
- zero is considered "successful termination" and any nonzero value is considered
- "abnormal termination" by shells and the like. Most systems require it to be in
- the range 0-127, and produce undefined results otherwise. Some systems have a
- convention for assigning specific meanings to specific exit codes, but these are
- generally underdeveloped; Unix programs generally use 2 for command line syntax
- errors and 1 for all other kind of errors. If another type of object is passed,
- ``None`` is equivalent to passing zero, and any other object is printed to
- ``sys.stderr`` and results in an exit code of 1. In particular,
- ``sys.exit("some error message")`` is a quick way to exit a program when an
- error occurs.
+ statements are honored, and it is possible to intercept the exit attempt at
+ an outer level.
+
+ The optional argument *arg* can be an integer giving the exit status
+ (defaulting to zero), or another type of object. If it is an integer, zero
+ is considered "successful termination" and any nonzero value is considered
+ "abnormal termination" by shells and the like. Most systems require it to be
+ in the range 0-127, and produce undefined results otherwise. Some systems
+ have a convention for assigning specific meanings to specific exit codes, but
+ these are generally underdeveloped; Unix programs generally use 2 for command
+ line syntax errors and 1 for all other kind of errors. If another type of
+ object is passed, ``None`` is equivalent to passing zero, and any other
+ object is printed to :data:`stderr` and results in an exit code of 1. In
+ particular, ``sys.exit("some error message")`` is a quick way to exit a
+ program when an error occurs.
+
+ Since :func:`exit` ultimately "only" raises an exception, it will only exit
+ the process when called from the main thread, and the exception is not
+ intercepted.
.. data:: flags