Skip to content

Commit

Permalink
[3.13] gh-120838: Add a Note in the Docs About Expectations for Py_Fi…
Browse files Browse the repository at this point in the history
…nalize() (gh-120852)

(cherry picked from commit 03fa2df, AKA gh-120839)

Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
  • Loading branch information
miss-islington and ericsnowcurrently committed Jun 21, 2024
1 parent abdbf33 commit e748805
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions Doc/c-api/init.rst
Original file line number Diff line number Diff line change
Expand Up @@ -396,9 +396,16 @@ Initializing and finalizing the interpreter
:c:func:`Py_NewInterpreter` below) that were created and not yet destroyed since
the last call to :c:func:`Py_Initialize`. Ideally, this frees all memory
allocated by the Python interpreter. This is a no-op when called for a second
time (without calling :c:func:`Py_Initialize` again first). Normally the
return value is ``0``. If there were errors during finalization
(flushing buffered data), ``-1`` is returned.
time (without calling :c:func:`Py_Initialize` again first).
Since this is the reverse of :c:func:`Py_Initialize`, it should be called
in the same thread with the same interpreter active. That means
the main thread and the main interpreter.
This should never be called while :c:func:`Py_RunMain` is running.
Normally the return value is ``0``.
If there were errors during finalization (flushing buffered data),
``-1`` is returned.
This function is provided for a number of reasons. An embedding application
might want to restart Python without having to restart the application itself.
Expand Down

0 comments on commit e748805

Please sign in to comment.