Viewing file: __init__.py (1.46 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# Copyright 2009 Brian Quinlan. All Rights Reserved. # Licensed to PSF under a Contributor Agreement.
"""Execute computations asynchronously using threads or processes."""
__author__ = 'Brian Quinlan (brian@sweetapp.com)'
from concurrent.futures._base import (FIRST_COMPLETED, FIRST_EXCEPTION, ALL_COMPLETED, CancelledError, TimeoutError, BrokenExecutor, Future, Executor, wait, as_completed)
__all__ = ( 'FIRST_COMPLETED', 'FIRST_EXCEPTION', 'ALL_COMPLETED', 'CancelledError', 'TimeoutError', 'BrokenExecutor', 'Future', 'Executor', 'wait', 'as_completed', 'ProcessPoolExecutor', 'ThreadPoolExecutor', )
def __dir__(): return __all__ + ('__author__', '__doc__')
def __getattr__(name): global ProcessPoolExecutor, ThreadPoolExecutor
if name == 'ProcessPoolExecutor': from .process import ProcessPoolExecutor as pe ProcessPoolExecutor = pe return pe
if name == 'ThreadPoolExecutor': from .thread import ThreadPoolExecutor as te ThreadPoolExecutor = te return te
raise AttributeError(f"module {__name__} has no attribute {name}")
|