Uh oh!
There was an error while loading. Please reload this page.
GH-84559: Deprecate fork being the multiprocessing default. - #100618
Conversation
This starts the process. Users who don't specify their own start method and use the default on platforms where it is 'fork' will see a DeprecationWarning upon multiprocessing.Pool() construction or upon multiprocessing.Process.start().
gpshead
commented
Jan 1, 2023
This code could be a lot cleaner if #39615 were implemented... |
Uh oh!
There was an error while loading. Please reload this page.
gvanrossum
left a comment
There was a problem hiding this comment.
Changes to test_asyncio LGTM. I hope I won't have to review the rest, I know basically nothing about multiprocessing. :-(
kumaraditya303
left a comment
There was a problem hiding this comment.
I approve the asyncio change.
Uh oh!
There was an error while loading. Please reload this page.
hugovk
commented
Feb 2, 2023
Please could you add this to What's New, under Pending Removal in Python 3.14? |
gpshead
commented
Feb 2, 2023
Ahha, I knew we had a list of upcoming things somewhere. Good idea, done! What's New text added. |
bedevere-bot
commented
Feb 3, 2023
|
bedevere-bot
commented
Feb 3, 2023
|
bedevere-bot
commented
Feb 3, 2023
|
bedevere-bot
commented
Feb 3, 2023
|
This reverts the core of python#100618 while leaving relevant documentation improvements and minor refactorings in place.
The default of `fork` is known to be problematic. Python itself is changing the default to `spawn`. The new default is expected to be in place for Python 3.14. Python references for the change to the default: * python/cpython#84559 * python/cpython#100618 We also have several places where this option had to be set to `spawn` to make tests work. The AMD code even checks and overrides the value if it's not set to `spawn`. Simplify things for everyone and just default to `spawn`, but leave the option in place just in case, at least for now. Signed-off-by: Russell Bryant <rbryant@redhat.com>
This starts the process. Users who don't specify their own start method and use the default on platforms where it is 'fork' will see a DeprecationWarning upon multiprocessing.Pool() construction or upon multiprocessing.Process.start().
'fork'is broken: change to `'forkserver' || 'spawn'#84559