Added some comments on the interaction of reload() and extension modules.

Based on comments from Chris Barker <cbarker@jps.net>.
This commit is contained in:
Fred Drake 2000-10-02 22:38:09 +00:00
parent 296b8f5bd2
commit 4dc1a6d6ba
1 changed files with 6 additions and 1 deletions

View File

@ -435,7 +435,7 @@ int main(int argc, char **argv)
initspam();
\end{verbatim}
And example may be found in the file \file{Demo/embed/demo.c} in the
An example may be found in the file \file{Demo/embed/demo.c} in the
Python source distribution.
\strong{Note:} Removing entries from \code{sys.modules} or importing
@ -444,6 +444,11 @@ following a \cfunction{fork()} without an intervening
\cfunction{exec()}) can create problems for some extension modules.
Extension module authors should exercise caution when initializing
internal data structures.
Note also that the \function{reload()} function can be used with
extension modules, and will call the module initialization function
(\cfunction{initspam()} in the example), but will not load the module
again if it was loaded from a dynamically loadable object file
(\file{.so} on \UNIX, \file{.dll} on Windows).
A more substantial example module is included in the Python source
distribution as \file{Modules/xxmodule.c}. This file may be used as a