This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author hniksic
Recipients aeros, asvetlov, bquinlan, hniksic, pitrou, torsten
Date 2020-04-14.18:15:17
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1586888117.89.0.410281378481.issue36780@roundup.psfhosted.org>
In-reply-to
Content
> I don't think there's much ThreadPoolExecutor can do.  If you drop the references to the threads, they still exist and they still be waited upon at interpreter exit.

ThreadPoolExecutor introduces additional waiting of its own, and it is this wait the PR adds an option to disable.

> The solution is for you to avoid having hanging threads.

In some cases that is not possible. For example, the file IO on network file systems can take an arbitrary amount of time, and there is no way to implement a timeout. DNS lookups have been notorious for not supporting timeouts. Many third-party libraries, such as database drivers, still don't support timeouts.

This is a real issue that bit many users in production systems, it's not about a toy program using "home-baked networking code".
History
Date User Action Args
2020-04-14 18:15:17hniksicsetrecipients: + hniksic, bquinlan, pitrou, asvetlov, torsten, aeros
2020-04-14 18:15:17hniksicsetmessageid: <1586888117.89.0.410281378481.issue36780@roundup.psfhosted.org>
2020-04-14 18:15:17hniksiclinkissue36780 messages
2020-04-14 18:15:17hniksiccreate