view mercurial/thirdparty/concurrent/futures/__init__.py @ 38000:7c05198cd1ca stable

push: continue without locking on lock failure other than EEXIST (issue5882) This code was added by 3f5e75c22585 "push: make locking of source optional (issue3684)", but EACCES isn't the only error that could be triggered by filesystem permission. I think catching LockUnavailable is more appropriate than testing errno value by caller.
author Yuya Nishihara <yuya@tcha.org>
date Tue, 15 May 2018 22:12:55 +0900
parents 0a9c0d3480b2
children
line wrap: on
line source

# Copyright 2009 Brian Quinlan. All Rights Reserved.
# Licensed to PSF under a Contributor Agreement.

"""Execute computations asynchronously using threads or processes."""

from __future__ import absolute_import

__author__ = 'Brian Quinlan (brian@sweetapp.com)'

from ._base import (
    FIRST_COMPLETED,
    FIRST_EXCEPTION,
    ALL_COMPLETED,
    CancelledError,
    TimeoutError,
    Future,
    Executor,
    wait,
    as_completed,
)
from .thread import ThreadPoolExecutor

try:
    from .process import ProcessPoolExecutor
except ImportError:
    # some platforms don't have multiprocessing
    pass