| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
* PyUnicode_InternInPlace() now ensures that interned strings are ready. * Add _PyUnicode_ClearInterned(). * Py_Finalize() now releases Unicode interned strings: call _PyUnicode_ClearInterned().
|
Python has between 1446 (./python -sSI -c pass command) and 4660 (run 19 tests using ./python -m test and interrupt it after around 19 tests) interned strings at exit. This PR has no significant impact on timing of the ./python -sSI -c pass command: # benchmark $ python3 -m pyperf command -o ref.json -- ./python -sSI -c pass # switch to the PR branch, make $ python3 -m pyperf command -o clear.json -- ./python -sSI -c pass $ python3 -m pyperf show ref.json Mean +- std dev: 7.56 ms +- 0.24 ms $ python3 -m pyperf compare_to ref.json clear.json Benchmark hidden because not significant (1): command @shihai1991 proposed PR #21087 to solve the same problem. My PR clears interned strings before calling _PyDict_Fini() and _PyList_Fini(), since _PyUnicode_ClearInterned() uses a dict and a list. |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
ready.
call _PyUnicode_ClearInterned().
https://bugs.python.org/issue1635741