gipc / README

What can gipc do for you?
With ``gipc`` (pronunciation “gipsy”) child processes and gevent can
easily be used within one Python application. ``gipc`` provides
gevent-aware ``multiprocessing.Process``-based child processes and
gevent-cooperative inter-process communication.

Isn't this achievable with just gevent+multiprocessing?
Yes, but it requires care: On Unix, child process creation via Python's
``multiprocessing`` package in the context of ``gevent`` might yield an
undesired event loop state in the child and most likely breaks your application
in some way. Furthermore, blocking method calls such as ``join()`` on a
``multiprocessing.Process`` or the ``send()``/``recv()`` methods on a
``multiprocessing.Connection`` are not gevent-cooperative. ``gipc`` overcomes
these challenges  for you in a straight-forward fashion and allows for simple
integration of child processes in your application -- on POSIX-compliant
systems as well as on Windows.

The documentation with API details, installation instructions, requirements,
and code examples can be found at

Releases are available at `PyPI <>`_.
The development version can be received from the mercurial repository at
`bitbucket <>`_.

Author & license
``gipc`` is written and maintained by `Jan-Philip Gehrcke <>`_
and is licensed under the 
`Apache License 2.0 <>`_.

Your feedback is highly appreciated. You can contact me at