Description
Feature or enhancement
Proposal:
Immortal objects might lead to some unexpected results for users that are (unfortunately) messing with reference count details, as seen in #127191; but currently, there's no way to determine what objects are actually immortal.
Immortality is an implementation detail, but it still does affect reference counting, and given that it's not very safe to rely on very specific reference counts, we don't want the only way to check for immortality to be via sys.getrefcount
. So, given that we already have sys._is_interned, it seems fitting to add a sys._is_immortal
alongside it.
If we go with this, I think it's also a good idea to note it in some of the documentation. For example, sys.getrefcount
says this:
some objects are immortal and have a very high refcount that does not reflect the actual number of references.
Here, it might be a good idea to mention my proposed sys._is_immortal
, so there's less ambiguity about the returned value.
Has this already been discussed elsewhere?
No response given
Links to previous discussion of this feature:
No response