Assume to not have any particular memory-optimization problem in the script, so my question is about Python coding style. That also means: is it good and common python practice to dereference an object as soon as whenever possible? The scenario is as follows.
Class A
instantiates an object as self.foo
and asks a second class B
to store and share it with other objects.
At a certain point A
decides that self.foo
should not be shared anymore and removes it from B
.
Class A
still has a reference to foo, but we know this object to be useless from now on.
As foo is a relatively big object, would you bother to delete the reference from A and how? (e.g. del
vs setting self.foo = None
) How this decision influence the garbage collector?