From fccf787c1ddca5ffd4095ef1c3cb99f8feb8c78a Mon Sep 17 00:00:00 2001 From: Adam Janovsky Date: Fri, 19 Feb 2021 17:39:09 +0100 Subject: Improves parallel processing function - Adds option to unpack arguments --- sec_certs/cert_processing.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sec_certs/cert_processing.py b/sec_certs/cert_processing.py index 739bfa9f..b5519aab 100644 --- a/sec_certs/cert_processing.py +++ b/sec_certs/cert_processing.py @@ -5,13 +5,16 @@ import time def process_parallel(func: Callable, items: Iterable, max_workers: int, callback: Optional[Callable] = None, - use_threading: bool = True, progress_bar: bool = True): + use_threading: bool = True, progress_bar: bool = True, unpack: bool = False): if use_threading is True: pool = ThreadPool(max_workers) else: pool = Pool(max_workers) - results = [pool.apply_async(func, (i, ), callback=callback) for i in items] + if unpack is False: + results = [pool.apply_async(func, (i, ), callback=callback) for i in items] + else: + results = [pool.apply_async(func, (*i, ), callback=callback) for i in items] if progress_bar is True: bar = tqdm(total=len(results)) -- cgit v1.3.1