From: Fred Drake Date: Fri, 10 Aug 2001 17:37:33 +0000 (+0000) Subject: Added a warning about reference cycles and memory consumption to the X-Git-Tag: v2.2a3~676 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d635e3c468d312ce83f6cacc1989dfdc735dbc05;p=thirdparty%2FPython%2Fcpython.git Added a warning about reference cycles and memory consumption to the section on functions which return stack frames. This closes SF bug #449258. --- diff --git a/Doc/lib/libinspect.tex b/Doc/lib/libinspect.tex index 6101ad87e0c2..e5ec9ca6204f 100644 --- a/Doc/lib/libinspect.tex +++ b/Doc/lib/libinspect.tex @@ -264,6 +264,16 @@ line within that list. The optional \var{context} argument specifies the number of lines of context to return, which are centered around the current line. +\strong{Warning:} Keeping references to frame objects, as found in +the first element of the frame records these functions return, can +cause your program to create reference cycles. Once a reference cycle +has been created, the lifespan of all objects which can be accessed +from the objects which form the cycle can become much longer even if +Python's optional cycle detector is enabled. If such cycles must be +created, it is important to ensure they are explicitly broken to avoid +the delayed destruction of objects and increased memory consumption +which occurs. + \begin{funcdesc}{getouterframes}{frame\optional{, context}} Get a list of frame records for a frame and all higher (calling) frames.