(RPyC) (Mem)ory
- RPyC-Mem is a light weight shared memory alternative for Python implemented using
RPyC
- RPyC-Mem has a ready to run service, which hosts network based shared memory to be consumed by different processes.
- RPyC-Mem has proxy classes to interact with the shared memory objects effectively.
-
Install RPyC-Mem from
pypi
pip install rpyc-mem
-
Run the RPyC-Mem server
from rpyc_mem.service import RpycMemService rs = RpycMemService('localhost', 18813) rs.run()
-
Share data between processes
Client 1:
Using RPyC Memory Session
from rpyc_mem.session import RpycMemSession rses = RpycMemSession('localhost', 18813) rm = rses.rmem('unique-key', robj_gen=lambda: rses.rmod().list([1, 2])) print(rm) # [1, 2]
Client 2:
Using underlying RPyC Memory classes
from rpyc_mem.connect import RpycMemConnect from rpyc_mem.client import RemoteModule, RpycMem rc = RpycMemConnect('localhost', 18813) rp = RemoteModule(rc) rm = RpycMem(rc, 'unique-key', robj_gen=lambda: rp().list([1, 2, 3])) print(rm) # [1, 2] rm.append(3)
Client 1 continued... :
print(rm) # [1, 2, 3]
-
For more details, check out the API-Reference, User-Guide