On Feb 2, 2022 23:31, Barry <ba...@barrys-emacs.org> wrote: > On 2 Feb 2022, at 21:12, Marco Sulla <marco.sulla.pyt...@gmail.com> wrote: > > You could add a __del__ that calls stop :)
Didn't python3 make this non deterministic when del is called? I thought the recommendation is to not rely on __del__ in python3 code. ==> Adding __del__ also poses chalenges is you would like to support pypy: "There are a few extra implications from the difference in the GC. Most notably, if an object has a __del__, the __del__ is never called more than once in PyPy; but CPython will call the same __del__ several times if the object is resurrected and dies again (at least it is reliably so in older CPythons; newer CPythons try to call destructors not more than once, but there are counter-examples). The __del__ methods are called in "the right" order if they are on objects pointing to each other, as in CPython, but unlike CPython, if there is a dead cycle of objects referencing each other, their __del__ methods are called anyway; CPython would instead put them into the list garbage of the gc module." https://doc.pypy.org/en/latest/cpython_differences.html -- https://mail.python.org/mailman/listinfo/python-list