Content-Length: 301632 | pFad | https://github.com/python/cpython/issues/138813

ad Mutable default argument in `multiprocessing.dummy.DummyProcess.__init__` · Issue #138813 · python/cpython · GitHub
Skip to content

Mutable default argument in multiprocessing.dummy.DummyProcess.__init__ #138813

Description

@zeff-ir

Bug report

Bug description:

The DummyProcess.__init__ method in multiprocessing.dummy uses a mutable default argument for kwargs:

def __init__(self, group=None, target=None, name=None, args=(), kwargs={}):

This can lead to unexpected behavior if the same dictionary is modified between calls.
Other threading-based classes like threading.Thread and threading.Timer already use None as the default and initialize a new dict inside the constructor.

CPython versions tested on:

CPython main branch, 3.13, 3.14, 3.15

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    stdlibStandard Library Python modules in the Lib/ directorytopic-multiprocessingtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions









    ApplySandwichStrip

    pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


    --- a PPN by Garber Painting Akron. With Image Size Reduction included!

    Fetched URL: https://github.com/python/cpython/issues/138813

    Alternative Proxies:

    Alternative Proxy

    pFad Proxy

    pFad v3 Proxy

    pFad v4 Proxy