kwcoco.util.util_futures module¶
-
class
kwcoco.util.util_futures.
SerialExecutor
[source]¶ Bases:
object
Implements the concurrent.futures API around a single-threaded backend
Example
>>> with SerialExecutor() as executor: >>> futures = [] >>> for i in range(100): >>> f = executor.submit(lambda x: x + 1, i) >>> futures.append(f) >>> for f in concurrent.futures.as_completed(futures): >>> assert f.result() > 0 >>> for i, f in enumerate(futures): >>> assert i + 1 == f.result()
-
class
kwcoco.util.util_futures.
Executor
(mode='thread', max_workers=0)[source]¶ Bases:
object
Wrapper around a specific executor.
Abstracts Serial, Thread, and Process Executor via arguments.
Parameters: - mode (str, default=’thread’) – either thread, serial, or process
- max_workers (int, default=0) – number of workers. If 0, serial is forced.