Spaces:
Runtime error
Runtime error
""" | |
Source url: https://github.com/OPHoperHPO/image-background-remove-tool | |
Author: Nikita Selin (OPHoperHPO)[https://github.com/OPHoperHPO]. | |
License: Apache License 2.0 | |
""" | |
from concurrent.futures import ThreadPoolExecutor | |
from typing import Any, Iterable | |
def thread_pool_processing(func: Any, data: Iterable, workers=18): | |
""" | |
Passes all iterator data through the given function | |
Args: | |
workers: Count of workers. | |
func: function to pass data through | |
data: input iterator | |
Returns: | |
function return list | |
""" | |
with ThreadPoolExecutor(workers) as p: | |
return list(p.map(func, data)) | |
def batch_generator(iterable, n=1): | |
""" | |
Splits any iterable into n-size packets | |
Args: | |
iterable: iterator | |
n: size of packets | |
Returns: | |
new n-size packet | |
""" | |
it = len(iterable) | |
for ndx in range(0, it, n): | |
yield iterable[ndx : min(ndx + n, it)] | |