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.
Project Links
- Downloads: http://pypi.python.org/pypi/asyncthreads
- Documentation: https://bitbucket.org/agillis/asyncthreads/wiki/Home
- Project page: https://bitbucket.org/agillis/asyncthreads
- License: http://www.opensource.org/licenses/mit-license.php
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
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.