用rpyc3.0写了个通讯模块,使用线程提供主动操作远程对象与被动为远程提供服务。
python中有一般的线程和一个微线程的stackless,我比较喜欢stackless。
 
代码中STACKLESS=1为使用stackless, STACKLESS=0为使用线程。
 
运行服务器:python rpc.py 1
运行客户端:python rpc.py
 
客户端测试代码有两个函数:testclient_interact  和 testclient。
需要手动改动代码去执行对应的测试。
testclient_interact是一个远程的py控制台。
 
rpyc3.0 rc1在线程中使用,我的理解好像会出些不稳定的问题。我增加了THinitConn和SLinitConn用于修正这些问题。具体看看代码。