Message235490
I think dynload_shlib (and maybe some of the other non-ldl dynamic library loaders?) should close the libraries when the interpreter is shut down. Currently the handles are not ever closed and in ldl's case sometimes leaked.
The reason I desire this behavior is I have Python opening a shared library that I also open (all within the same process), and I want to be able to reload the library at runtime (via dlclose() + dlopen()) by shutting down the Python interpreter, dlclose()/dlopen(), and re-starting Python on the other side, however having the hanging reference to the library within the interpreter is preventing my dlclose() call from unloading the library.
I have attached a patch for dynload_shlib.c that tracks all handles returned by dlopen() and will close them properly when the interpreter is shut down. |
|
Date |
User |
Action |
Args |
2015-02-06 18:21:40 | Adam | set | recipients:
+ Adam |
2015-02-06 18:21:40 | Adam | set | messageid: <1423246900.58.0.18702391948.issue23402@psf.upfronthosting.co.za> |
2015-02-06 18:21:40 | Adam | link | issue23402 messages |
2015-02-06 18:21:40 | Adam | create | |
|