Skip to main content

asyncthreads: asynchronous thread utility objects

Project description

The asyncthreads module provides common threading design patterns and utilities needed for asynchronous and multithreaded programming. This includes a thread pool and a reactor, which together combine to create a highly reliable concurrent event processing system.

Installation

Using pip

Make sure python-pip is installed on you system. If you are using virtualenv, then pip is alredy installed into environments created by vertualenv. Run pip to install asyncthreads:

pip install asyncthreads

From Source

The asyncthreads package is installed from source using distutils in the usual way. Download the source distribution first. Un-tar the source tarball and run the following to install the package site-wide:

python setup.py install

Usage

Using the ThreadPool and Reactor is as simple as creating an instance and submitting work:

r = Reactor(ThreadPool(MIN_SIZE, MAX_SIZE))
r.start()
r.call(handle_event, (transport, event_id))
r.call_later(300, five_min_sync_check, (param1, param2))
r.call_in_thread(background_task)
r.call_in_thread_later(600, ten_min_async_check, (param1, param2))
r.shutdown()

See the documentation for details.

For example usage, look in the examples and test directories in src.

Requirements

  • Python 2.7 or greater

Development Tools

Development tools are only required for doing development work and running tests.

  • mercurial

  • py.test

  • pychecker

Bugs and Issues

http://bitbucket.org/agillis/asyncthreads/issues/

Project details


Download files

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

Source Distribution

asyncthreads-1.5.4.tar.bz2 (13.6 kB view details)

Uploaded Source

File details

Details for the file asyncthreads-1.5.4.tar.bz2.

File metadata

File hashes

Hashes for asyncthreads-1.5.4.tar.bz2
Algorithm Hash digest
SHA256 200b0dbc7dae8cf472cfff593d366cb87c27257dec4cd587c03f4d0383acf25e
MD5 ed7c4c659b7494a6ff0fa7869fcaa88b
BLAKE2b-256 1541cf515306b73a20062b2623d2c5c3921194c1af195f0fb077367b35b2b898

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page