Mark Dickinson <dicki...@gmail.com> added the comment:

You say "for testing purposes only", but I'd add "for debugging" to the list of 
use-cases, having just spent a few hours trying to understand why I was getting 
a particular PySide2 "Internal C++ object already deleted." exception under 
Python 3.6 but not under Python 3.7 and later. [*]

Even just making the list of exit handlers introspectable (so just 
_get_exitfuncs()) would have been really useful in diagnosing the issue faster.



[*] The answer turned out to be that under Python 3.6 the PySide2 exit handler 
was being run before the concurrent.futures thread-cleanup exit handler, while 
on Python 3.7, for obscure reasons, the exit handlers were being registered in 
the reverse order. To discover this, I ended up resorting to the elegant hack 
(if that's not a contradiction in terms) described in 
https://stackoverflow.com/a/63029332/270986

----------
nosy: +mark.dickinson

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32082>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to