merge 3.3 (#7340)
This commit is contained in:
commit
184f01544f
|
@ -215,21 +215,6 @@ always available.
|
||||||
a traceback object (see the Reference Manual) which encapsulates the call
|
a traceback object (see the Reference Manual) which encapsulates the call
|
||||||
stack at the point where the exception originally occurred.
|
stack at the point where the exception originally occurred.
|
||||||
|
|
||||||
.. warning::
|
|
||||||
|
|
||||||
Assigning the *traceback* return value to a local variable in a function
|
|
||||||
that is handling an exception will cause a circular reference. Since most
|
|
||||||
functions don't need access to the traceback, the best solution is to use
|
|
||||||
something like ``exctype, value = sys.exc_info()[:2]`` to extract only the
|
|
||||||
exception type and value. If you do need the traceback, make sure to
|
|
||||||
delete it after use (best done with a :keyword:`try`
|
|
||||||
... :keyword:`finally` statement) or to call :func:`exc_info` in a
|
|
||||||
function that does not itself handle an exception.
|
|
||||||
|
|
||||||
Such cycles are normally automatically reclaimed when garbage collection
|
|
||||||
is enabled and they become unreachable, but it remains more efficient to
|
|
||||||
avoid creating cycles.
|
|
||||||
|
|
||||||
|
|
||||||
.. data:: exec_prefix
|
.. data:: exec_prefix
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue