diff options
author | Fred Drake <fdrake@acm.org> | 1997-12-15 21:59:33 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 1997-12-15 21:59:33 (GMT) |
commit | 9ab2b2ec5b15f198338a9152ff916f53e868ac6f (patch) | |
tree | 133024869ecd6f026a71db5bd6a996b5250bd593 /Doc/lib/libshelve.tex | |
parent | 54820dc8e4db15bd30c4b2f650d79cd0fb96f76b (diff) | |
download | cpython-9ab2b2ec5b15f198338a9152ff916f53e868ac6f.zip cpython-9ab2b2ec5b15f198338a9152ff916f53e868ac6f.tar.gz cpython-9ab2b2ec5b15f198338a9152ff916f53e868ac6f.tar.bz2 |
Fixed index references to modules.
Placed references closer to usage.
Diffstat (limited to 'Doc/lib/libshelve.tex')
-rw-r--r-- | Doc/lib/libshelve.tex | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/Doc/lib/libshelve.tex b/Doc/lib/libshelve.tex index 05b3a93..25ced0e 100644 --- a/Doc/lib/libshelve.tex +++ b/Doc/lib/libshelve.tex @@ -1,9 +1,6 @@ \section{Standard Module \sectcode{shelve}} \label{module-shelve} \stmodindex{shelve} -\stmodindex{pickle} -\bimodindex{dbm} -\bimodindex{gdbm} A ``shelf'' is a persistent, dictionary-like object. The difference with ``dbm'' databases is that the values (not the keys!) in a shelf @@ -11,6 +8,7 @@ can be essentially arbitrary Python objects --- anything that the \code{pickle} module can handle. This includes most class instances, recursive data types, and objects containing lots of shared sub-objects. The keys are ordinary strings. +\refstmodindex{pickle} To summarize the interface (\code{key} is a string, \code{data} is an arbitrary object): @@ -37,20 +35,23 @@ Restrictions: \begin{itemize} \item -The choice of which database package will be used (e.g. dbm or gdbm) +The choice of which database package will be used (e.g. \code{dbm} or +\code{gdbm}) depends on which interface is available. Therefore it isn't safe to -open the database directly using dbm. The database is also -(unfortunately) subject to the limitations of dbm, if it is used --- +open the database directly using \code{dbm}. The database is also +(unfortunately) subject to the limitations of \code{dbm}, if it is used --- this means that (the pickled representation of) the objects stored in the database should be fairly small, and in rare cases key collisions may cause the database to refuse updates. +\refbimodindex{dbm} +\refbimodindex{gdbm} \item Dependent on the implementation, closing a persistent dictionary may or may not be necessary to flush changes to disk. \item -The \code{shelve} module does not support {\em concurrent} read/write +The \code{shelve} module does not support \emph{concurrent} read/write access to shelved objects. (Multiple simultaneous read accesses are safe.) When a program has a shelf open for writing, no other program should have it open for reading or writing. \UNIX{} file locking can |