Welcome to IPyC¶
An elegant and modern Python IPC implementation using multiprocessing and asyncio. IPyC comes in two flavors, synchronous and asynchronous, both using the same backend allowing you to pick and chose to your needs.
Uses the modern
awaitAsyncIO Python API.
Includes a synchronous version for backward compatibility.
Flexible, easy to install, setup, and use.
Can transfer custom objects and classes at runtime!
- Synchronous IPyC Reference
- Asynchronous IPyC Reference
- IPyC Communication Reference
- IPyC Serialization Reference
- IPyC Examples and Uses
- Setting Up Logging
To install the library you can just run the following command:
# In general pip install IPyC # Linux/macOS python3 -m pip install -U IPyC # Windows py -3 -m pip install -U IPyC
and can be used as follows:
To install the development version of the library directly from source:
$ git clone https://github.com/dovedevic/IPyC.git $ cd IPyC $ python3 -m pip install -U .
If you’re having trouble with something, these resources might help.
Synchronous vs Asynchronous¶
IPyC comes in two favors: synchronous and asynchronous. Although the underlying mechanism which IPyC uses to communicate is similar between flavors, the two differ in subtle ways. Each version has it’s own library reference documentation, as described in the table of contents.
Because the mechanism behind IPyC is the same, one can use a
AsyncIPyCHost host with a
client and vice-versa.