cpython/Lib/multiprocessing
Miss Islington (bot) 6f1e0c4f01
[3.13] gh-137335: Fix unlikely name conflicts for named pipes in multiprocessing and asyncio on Windows (GH-137389) (GH-145171)
Since os.stat() raises an OSError for existing named pipe "\\.\pipe\...",
os.path.exists() always returns False for it, and tempfile.mktemp() can
return a name that matches an existing named pipe.

So, tempfile.mktemp() cannot be used to generate unique names for named
pipes. Instead, CreateNamedPipe() should be called in a loop with
different names until it completes successfully.
(cherry picked from commit d6a71f4690)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2026-02-24 17:20:53 +00:00
..
dummy bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-13700) 2019-06-01 11:00:15 +03:00
__init__.py Simplify __all__ in multiprocessing (GH-6856) 2018-07-11 19:22:28 +09:00
connection.py [3.13] gh-137335: Fix unlikely name conflicts for named pipes in multiprocessing and asyncio on Windows (GH-137389) (GH-145171) 2026-02-24 17:20:53 +00:00
context.py [3.13] gh-80334: fix multiprocessing.freeze_support for other spawn platforms (GH-134462) (#134620) 2025-05-24 04:13:37 +00:00
forkserver.py [3.13] gh-143706: Fix sys.argv not set during multiprocessing forkserver __main__ preload (GH-143717) (#143821) 2026-01-13 18:09:05 -08:00
heap.py
managers.py [3.13] gh-71936: Fix race condition in multiprocessing.Pool (GH-124973) (GH-126869) 2024-11-15 14:05:14 +00:00
pool.py gh-109649: Use os.process_cpu_count() (#110165) 2023-10-01 03:14:57 +02:00
popen_fork.py gh-83856: Honor atexit for all multiprocessing start methods (GH-114279) 2024-05-03 11:45:46 -07:00
popen_forkserver.py bpo-36888: Add multiprocessing.parent_process() (GH-13247) 2019-05-20 21:37:05 +02:00
popen_spawn_posix.py [3.13] gh-118981: multiprocessing.popen_spawn_posix, fix potential hang (gh-118982) (#138606) 2025-09-07 07:41:54 +00:00
popen_spawn_win32.py gh-118293: Suppress mouse cursor feedback when launching Windows processes with multiprocessing (GH-118315) 2024-04-28 21:10:44 +00:00
process.py gh-83856: Honor atexit for all multiprocessing start methods (GH-114279) 2024-05-03 11:45:46 -07:00
queues.py gh-71052: Enable test_concurrent_futures on platforms that lack multiprocessing (gh-115917) 2024-02-25 11:38:18 -08:00
reduction.py bpo-34521: Fix tests in test_multiprocessing_spawn to use correctly CMSG_SPACE (GH-9613) 2018-09-28 02:51:05 -07:00
resource_sharer.py gh-101225: Increase the socket backlog when creating a multiprocessing.connection.Listener (#113567) 2024-01-13 10:48:33 +01:00
resource_tracker.py [3.13] gh-142206: multiprocessing.resource_tracker: Decode messages using older protocol (GH-142215) (#142287) 2025-12-05 12:13:05 +00:00
shared_memory.py gh-82300: Add track parameter to multiprocessing.shared_memory (#110778) 2023-12-05 00:11:44 -08:00
sharedctypes.py
spawn.py [3.13] gh-109263: Start process from spawn context in multiprocessing no longer have side effect (GH-135813) (#143116) 2025-12-24 03:03:47 +00:00
synchronize.py [3.13] remove type annotations from multiprocessing. (GH-129381) (#129470) 2025-01-30 08:54:15 +00:00
util.py [3.13] gh-140734: fix off-by-one error when comparing to _SUN_PATH_MAX (GH-140903) (#141182) 2025-11-07 10:18:06 +00:00