gevent-cooperative child processes and inter-process communication.
From 2012 to 2018 gipc’s home was at bitbucket.org/jgehrcke/gipc. Since then development has continued on GitHub.
gipc (pronunciation as in “gipsy”) provides reliable child process management and non-blocking inter-process communication in the context of gevent.
With gipc, multiprocessing.Process-based child processes can safely be created anywhere within your gevent-powered application. The API of multiprocessing.Process objects is provided in a gevent-cooperative way. Also, gipc provides a pipe-based transport layer for gevent-cooperative inter-greenlet and inter-process communication. gipc is lightweight and easy to integrate.
Individual example programs can be found in the examples directory.
Visit https://gehrcke.de/gipc for installation instructions, API docs, code examples, and in-depth information.
The current version of gipc works on CPython 2.7/3.4/3.5/3.6/3.7/3.8. It supports gevent 1.2 through 1.5 and supports both, Unix-like systems as well as Windows. On Unix-like systems, gipc also works with PyPy2.7 and PyPy3.
Note: currently, gevent 1.5 is supported only for Linux.
gipc’s test suite is automatically executed on Linux, Darwin (macOS), and Windows.
Who uses it?
- disco (Discord Python library)
- Quantopian’s remote Python debugger
Are you successfully using gipc in your project? Please drop me a line!
How to run the tests?
gipc’s tests are written for pytest. With the repository’s root directory being the current working directory you can run the tests like this:
$ pip install -r requirements-tests.txt $ cd test && pytest -vv --cov-report term --cov-report html --cov gipc
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size gipc-1.1.0.tar.gz (32.6 kB)||File type Source||Python version None||Upload date||Hashes View|