summaryrefslogtreecommitdiffstats
path: root/Lib/multiprocessing/queues.py
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2017-06-10 11:10:13 (GMT)
committerGitHub <noreply@github.com>2017-06-10 11:10:13 (GMT)
commit1b7863c3b6519c6e134c28cab8b8af0dea43e375 (patch)
treef4c245335c1bd7de1f5bebb1f6dd99a44d569984 /Lib/multiprocessing/queues.py
parent5f31d5cf6efa8c304d352e34f9f2a1ed0074298e (diff)
downloadcpython-1b7863c3b6519c6e134c28cab8b8af0dea43e375.zip
cpython-1b7863c3b6519c6e134c28cab8b8af0dea43e375.tar.gz
cpython-1b7863c3b6519c6e134c28cab8b8af0dea43e375.tar.bz2
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>
Diffstat (limited to 'Lib/multiprocessing/queues.py')
-rw-r--r--Lib/multiprocessing/queues.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/Lib/multiprocessing/queues.py b/Lib/multiprocessing/queues.py
index 7f77837..90844fe 100644
--- a/Lib/multiprocessing/queues.py
+++ b/Lib/multiprocessing/queues.py
@@ -101,7 +101,7 @@ class Queue(object):
try:
if block:
timeout = deadline - time.time()
- if timeout < 0 or not self._poll(timeout):
+ if not self._poll(timeout):
raise Empty
elif not self._poll():
raise Empty