2 ms·
Python uses cycle breaking i.e. it chooses an object on a circular path and simply deletes it, which essentially bricks the entire connected set for reference c
by blattimwind 8y ago
Python uses cycle breaking i.e. it chooses an object on a circular path and simply deletes it, which essentially bricks the entire connected set for reference counting purposes. This means that if you ran __del__ code in this circumstance it could access references to deleted objects, i.e. use after free.
__del__ is simply an unsound part of Python.
- chrisseaton 8y agoAh I assumed it marked, ran destructors, then swept.