Skip to main content

gevent-cooperative child processes and inter-process communication.

Project description

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.

Documentation

The documentation with API details, installation instructions, requirements, and code examples can be found at http://gehrcke.de/gipc.

Availability

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.

Contact

Your feedback is highly appreciated. You can contact me at jgehrcke@googlemail.com.

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

gipc-0.1.0.tar.gz (19.5 kB view details)

Uploaded Source

File details

Details for the file gipc-0.1.0.tar.gz.

File metadata

  • Download URL: gipc-0.1.0.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gipc-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c189032db892d516616f40aac702be12da9d3ecfe60d52b0da70516f628297aa
MD5 30f9edb40f1b38f4fc5d320869dda4f0
BLAKE2b-256 78a96eac749d7d917a40f4b6ce80043d37cadaedca20084a5bf3ccfbf64e32a4

See more details on using hashes here.

Supported by

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