C API: module cleanup function
Mr.M
mrm at unknown.nospam
Sat Jan 30 08:24:51 EST 2010
Stefan Behnel ha scritto:
> Gabriel already pointed you to the module cleanup support in Py3, which can
> be used to provide reload capabilities to your module.
>
> In Py2, there are at least some ways to free resources when terminating the
> interpreter. See the "atexit" module and the Py_AtExit() function:
>
> http://docs.python.org/library/atexit.html
> http://docs.python.org/c-api/sys.html
>
> Note that both have their specific limitations, though, as you can see from
> the docs.
>
> Also note that it might help you to take a look at Cython, a Python-to-C
> compiler for writing fast C extensions. It has an option for generating
> module-level cleanup code automatically, and generally simplifies writing
> binary extension modules quite a bit.
>
> Stefan
Thank you very much Stefan for your reply, I'll study the sources you
have pointed me to.
Could I allocate my resources in a "static" object (without publishing
the type of that object so that I can't instantiate another one) linked
to my module?
This way, when I stop the interpreter, the object will be destroyed
calling its destructor.
There's something I'm missing?
Thank you, Luca.
More information about the Python-list
mailing list