From 77683fb88bf41be80eb8ebcbc735a39818dcf2d0 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 30 Aug 2014 11:08:34 +0530 Subject: [PATCH] Explicitly close ThreadPool from multiprocessing to ensure no leaked threads --- setup/plugins_mirror.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup/plugins_mirror.py b/setup/plugins_mirror.py index b5aeec58f9..8fd547ed95 100644 --- a/setup/plugins_mirror.py +++ b/setup/plugins_mirror.py @@ -343,7 +343,8 @@ def fetch_plugins(old_index): ans = {} pool = ThreadPool(processes=10) entries = tuple(parse_index()) - result = pool.map(partial(parallel_fetch, old_index), entries) + with closing(pool): + result = pool.map(partial(parallel_fetch, old_index), entries) for entry, plugin in zip(entries, result): if isinstance(plugin, dict): ans[entry.name] = plugin