New submission from Ross Lagerwall <[email protected]>:
6d6099f7fe89 introduced a regression.
It causes the following code to hang fairly reliably for me:
"""
import concurrent.futures
import math
def is_prime(n):
print(sqt(81)) <---- Note the type error!
def main():
with concurrent.futures.ProcessPoolExecutor(2) as executor:
executor.map(is_prime, [1, 2])
if __name__ == '__main__':
main()
"""
>From my limited knowledge of multiprocessing and concurrent futures, it seems
>that in shutdown_worker(), call_queue.put(None) hangs because the queue is
>full and there are no more workers consuming items in the queue (they exited
>early).
Increasing EXTRA_QUEUED_CALLS fixes the problem, though its probably not the
correct solution.
----------
components: Library (Lib)
messages: 139541
nosy: pitrou, rosslagerwall
priority: normal
severity: normal
status: open
title: Hangs in concurrent.futures
type: behavior
versions: Python 3.3
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue12456>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com