Skip to main content

Bulletproof concurrent.futures

Project description

Futureproof

Bulletproof concurrent.futures

concurrent.futures is amazing, but it's got some sharp edges that have bit me many times in the past.

Futureproof is a thin wrapper around it addressing some of these problems and adding some usability features.

Features:

  • Monitoring: a summary of completed tasks is logged by default.
  • Fail fast: errors cause the main thread to raise an exception and stop by default.
  • Error policy: the user can decide whether to raise, log or completely ignore errors on tasks.
  • Backpressure control: large collections of tasks are consumed lazily as the executor completes tasks, drastically reducing memory consumption and improving responsiveness in these situations.

Check out the examples directory for a hands-on comparison between futureproof and concurrent.futures.

Current status: Alpha

The API is subject to change.

Currently only tested as a wrapper for ThreadPoolExecutor and Python 3.7.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for futureproof, version 0.1.0.dev0
Filename, size File type Python version Upload date Hashes
Filename, size futureproof-0.1.0.dev0-py2.py3-none-any.whl (6.1 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size futureproof-0.1.0.dev0.tar.gz (4.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page