Uh oh!
There was an error while loading. Please reload this page.
gh-115035: Mark ThreadHandles as non-joinable earlier after forking - #115042
Conversation
This marks dead ThreadHandles as non-joinable earlier in `PyOS_AfterFork_Child()` before we execute any Python code. The handles are stored in a global linked list in `_PyRuntimeState` because `fork()` affects the entire process.
colesbury
commented
Feb 5, 2024
This doesn't call Footnotes |
pitrou
commented
Feb 6, 2024
That's a good point, but then we can probably remove the |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
pitrou
commented
Feb 6, 2024
Note: you're a core developer now ;-) |
gpshead
commented
Feb 7, 2024
nice refactoring, thanks! happy first-ish merge! |
…king (python#115042) This marks dead ThreadHandles as non-joinable earlier in `PyOS_AfterFork_Child()` before we execute any Python code. The handles are stored in a global linked list in `_PyRuntimeState` because `fork()` affects the entire process.
This marks dead ThreadHandles as non-joinable earlier in
PyOS_AfterFork_Child()before we execute any Python code. The handles are stored in a global linked list in_PyRuntimeStatebecausefork()affects the entire process.ThreadHandle_deallocafter fork in free-threaded build #115035