Tom Ritchford
Aug 8, 2023

--

I can only address the "cost of synchronization" part, and that only as a bystander!

The problem is being disposed of, not with a general rule, but a bunch of special cases. Most Python objects are local, never leave the scope they are created in, and thus don't need locking, and this can be automatically computed most of the time with no false positives. A lot of important objects are very long-lived and there's a rule for them, too.

The hope is that your average Python program will spent even a bit less "time" synchronizing. Certainly, one of the top design goals is that your boring old single-threaded Python program suffer no appreciable loss of performance.

--

--

No responses yet