Add edits suggested by Brett.
This commit is contained in:
parent
d4d0b01433
commit
06bca6e5e3
13
pep-3121.txt
13
pep-3121.txt
|
@ -19,8 +19,11 @@ the entry functions don't follow the usual calling convention, and
|
|||
multiple interpreters are not supported well. This PEP addresses these
|
||||
issues.
|
||||
|
||||
Problems
|
||||
========
|
||||
|
||||
Module Finalization
|
||||
===================
|
||||
-------------------
|
||||
|
||||
Currently, C modules are initialized usually once and then "live"
|
||||
forever. The only exception is when Py_Finalize() is called: then
|
||||
|
@ -31,7 +34,7 @@ is no way to reclaim them. As a result, there is currently no
|
|||
way to completely release all resources Python has allocated.
|
||||
|
||||
Entry point name conflicts
|
||||
==========================
|
||||
--------------------------
|
||||
|
||||
The entry point is currently called init<module>. This might conflict
|
||||
with other symbols also called init<something>. In particular,
|
||||
|
@ -40,7 +43,7 @@ problem got resolved as a side effect of renaming the module to
|
|||
_socket).
|
||||
|
||||
Entry point signature
|
||||
=====================
|
||||
---------------------
|
||||
|
||||
The entry point is currently a procedure (returning void). This
|
||||
deviates from the usual calling conventions; callers can find out
|
||||
|
@ -49,7 +52,7 @@ PyErr_Occurred. The entry point should return a PyObject*, which will
|
|||
be the module created, or NULL in case of an exception.
|
||||
|
||||
Multiple Interpreters
|
||||
=====================
|
||||
---------------------
|
||||
|
||||
Currently, extension modules share their state across all
|
||||
interpreters. This allows for undesirable information leakage across
|
||||
|
@ -97,7 +100,7 @@ Creation of a module is changed to expect an optional
|
|||
PyModuleDef*. The module state will be
|
||||
null-initialized.
|
||||
|
||||
Each module method with be passed the module object
|
||||
Each module method will be passed the module object
|
||||
as the first parameter. To access the module data,
|
||||
a function::
|
||||
|
||||
|
|
Loading…
Reference in New Issue