bpo-30595: Fix multiprocessing.Queue.get(timeout) (#2027) · python/cpython@1b7863c (original) (raw)
Navigation Menu
- GitHub Copilot Write better code with AI
- GitHub Models New Manage and compare prompts
- GitHub Advanced Security Find and fix vulnerabilities
- Actions Automate any workflow
- Codespaces Instant dev environments
- Issues Plan and track work
- Code Review Manage code changes
- Discussions Collaborate outside of code
- Code Search Find more, search less
- Explore
- Pricing
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Appearance settings
Commit 1b7863c
and
authored
bpo-30595: Fix multiprocessing.Queue.get(timeout) (#2027)
multiprocessing.Queue.get() with a timeout now polls its reader in non-blocking mode if it succeeded to aquire the lock but the acquire took longer than the timeout. Co-Authored-By: Grzegorz Grzywacz grzgrzgrz3@gmail.com
File tree
2 files changed
lines changed
2 files changed
lines changed
Lines changed: 1 addition & 1 deletion
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -101,7 +101,7 @@ def get(self, block=True, timeout=None): | ||
101 | 101 | try: |
102 | 102 | if block: |
103 | 103 | timeout = deadline - time.time() |
104 | -if timeout < 0 or not self._poll(timeout): | |
104 | +if not self._poll(timeout): | |
105 | 105 | raise Empty |
106 | 106 | elif not self._poll(): |
107 | 107 | raise Empty |
Lines changed: 5 additions & 1 deletion
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -350,10 +350,14 @@ Extension Modules | ||
350 | 350 | Library |
351 | 351 | ------- |
352 | 352 | |
353 | +- bpo-30595: multiprocessing.Queue.get() with a timeout now polls its reader in | |
354 | + non-blocking mode if it succeeded to aquire the lock but the acquire took | |
355 | + longer than the timeout. | |
356 | + | |
353 | 357 | - bpo-30605: re.compile() no longer raises a BytesWarning when compiling a |
354 | 358 | bytes instance with misplaced inline modifier. Patch by Roy Williams. |
355 | 359 | |
356 | -- bpo-29870: Fix ssl sockets leaks when connection is aborted in asyncio/ssl | |
360 | +- bpo-29870: Fix ssl sockets leaks when connection is aborted in asyncio/ssl | |
357 | 361 | implementation. Patch by Michaël Sghaïer. |
358 | 362 | |
359 | 363 | - bpo-29743: Closing transport during handshake process leaks open socket. |