Title: gh-104341: Call _PyEval_ReleaseLock() with NULL When Finalizing the Current Thread by ericsnowcurrently · Pull Request #105109 · python/cpython · GitHub
Open Graph Title: gh-104341: Call _PyEval_ReleaseLock() with NULL When Finalizing the Current Thread by ericsnowcurrently · Pull Request #105109 · python/cpython
X Title: gh-104341: Call _PyEval_ReleaseLock() with NULL When Finalizing the Current Thread by ericsnowcurrently · Pull Request #105109 · python/cpython
Description: This avoids the problematic race in drop_gil() by skipping the FORCE_SWITCHING code there for finalizing threads. This is a much simpler approach to solving the race than in other PRs I've posted. I'd still like to pursue some of those other ideas but that can be done separately for 3.13+. (The idea for this approach came out of discussions with @markshannon.) Issue: gh-104341
Open Graph Description: This avoids the problematic race in drop_gil() by skipping the FORCE_SWITCHING code there for finalizing threads. This is a much simpler approach to solving the race than in other PRs I've post...
X Description: This avoids the problematic race in drop_gil() by skipping the FORCE_SWITCHING code there for finalizing threads. This is a much simpler approach to solving the race than in other PRs I've ...
Opengraph URL: https://github.com/python/cpython/pull/105109
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:7c4c3da5-d7bd-c143-bd87-2a15e0712002 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | C65C:10FD0C:A2F3E2:D9CF74:69697F75 |
| html-safe-nonce | 672aec360bd6c1848c80cc7ab1652764365d57ea61abe1678cfa883ded1f1ce4 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDNjVDOjEwRkQwQzpBMkYzRTI6RDlDRjc0OjY5Njk3Rjc1IiwidmlzaXRvcl9pZCI6IjQwNDc4NDE1NDEwNTA5NTc2ODUiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 943e9d8167e51c0d5532cedf250a4ed0149cdf9f19af03e3c35c71599a262f75 |
| hovercard-subject-tag | pull_request:1370819238 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python/cpython/pull/105109/files |
| twitter:image | https://avatars.githubusercontent.com/u/1152074?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/1152074?s=400&v=4 |
| og:image:alt | This avoids the problematic race in drop_gil() by skipping the FORCE_SWITCHING code there for finalizing threads. This is a much simpler approach to solving the race than in other PRs I've post... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | f33e4b94c8824ab2b434d82a94139432fb5ebee9df4b75304140ad22508c4a77 |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 48f380098b30acbb700b04f1724481ca10d574fc |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width