[Python-checkins] CVS: python/dist/src/Doc/lib libpickle.tex,1.31,1.32

Barry Warsaw bwarsaw@users.sourceforge.net
2001年11月18日 08:24:03 -0800


Update of /cvsroot/python/python/dist/src/Doc/lib
In directory usw-pr-cvs1:/tmp/cvs-serv12688
Modified Files:
	libpickle.tex 
Log Message:
Paul Rubin reminds me that of course a class's constructor /could/ get
called, if the pickler found a __getinitargs__() method.
Index: libpickle.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libpickle.tex,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -d -r1.31 -r1.32
*** libpickle.tex	2001年11月15日 23:39:07	1.31
--- libpickle.tex	2001年11月18日 16:24:01	1.32
***************
*** 605,612 ****
 
 For safely unpickling class instances, you need to control exactly
! which classes will get created. The issue here is usually not that a
! class's constructor will get called --- it won't by the unpickler ---
! but that the class's destructor (i.e. its \method{__del__()} method)
! might get called when the object is garbage collected. The way to
 control the classes that are safe to instantiate differs in
 \module{pickle} and \module{cPickle}\footnote{A word of caution: the
--- 605,614 ----
 
 For safely unpickling class instances, you need to control exactly
! which classes will get created. Be aware that a class's constructor
! could be called (if the pickler found a \method{__getinitargs__()}
! method) and the the class's destructor (i.e. its \method{__del__()} method)
! might get called when the object is garbage collected. Depending on
! the class, it isn't very heard to trick either method into doing bad
! things, such as removing a file. The way to
 control the classes that are safe to instantiate differs in
 \module{pickle} and \module{cPickle}\footnote{A word of caution: the

AltStyle によって変換されたページ (->オリジナル) /