This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Mark.Shannon
Recipients Mark.Shannon, eric.snow, jeremy.kloth, jkloth, larry, maciej.szulik, nanjekyejoannah, ncoghlan, phsilva, rhettinger, shihai1991, vstinner
Date 2020-03-17.14:10:55
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1584454255.51.0.514415647375.issue39511@roundup.psfhosted.org>
In-reply-to
Content
Consider the case where a thread that doesn't hold the GIL attempts to get a reference on `None`.

The problem with having a single immortal `None`, is that it will cause data cache thrashing as two different CPUs modify the refcount on the shared `None` object.
Each subinterpreter needs its own distinct `None`.

`None` could be made immortal, it just can't be shared between sub-interpreters.
History
Date User Action Args
2020-03-17 14:10:55Mark.Shannonsetrecipients: + Mark.Shannon, rhettinger, ncoghlan, vstinner, larry, jkloth, phsilva, jeremy.kloth, eric.snow, maciej.szulik, nanjekyejoannah, shihai1991
2020-03-17 14:10:55Mark.Shannonsetmessageid: <1584454255.51.0.514415647375.issue39511@roundup.psfhosted.org>
2020-03-17 14:10:55Mark.Shannonlinkissue39511 messages
2020-03-17 14:10:55Mark.Shannoncreate