1r"""The :mod:`loky` module manages a pool of worker that can be re-used across time.
2It provides a robust and dynamic implementation os the
3:class:`ProcessPoolExecutor` and a function :func:`get_reusable_executor` which
4hide the pool management under the hood.
5"""
6from concurrent.futures import (
7 ALL_COMPLETED,
8 FIRST_COMPLETED,
9 FIRST_EXCEPTION,
10 CancelledError,
11 Executor,
12 TimeoutError,
13 as_completed,
14 wait,
15)
16
17from ._base import Future
18from .backend.context import cpu_count
19from .backend.reduction import set_loky_pickler
20from .reusable_executor import get_reusable_executor
21from .cloudpickle_wrapper import wrap_non_picklable_objects
22from .process_executor import BrokenProcessPool, ProcessPoolExecutor
23
24
25__all__ = [
26 "get_reusable_executor",
27 "cpu_count",
28 "wait",
29 "as_completed",
30 "Future",
31 "Executor",
32 "ProcessPoolExecutor",
33 "BrokenProcessPool",
34 "CancelledError",
35 "TimeoutError",
36 "FIRST_COMPLETED",
37 "FIRST_EXCEPTION",
38 "ALL_COMPLETED",
39 "wrap_non_picklable_objects",
40 "set_loky_pickler",
41]
42
43
44__version__ = "3.4.1"