正如这里所解释的,使用 RPyC 2 重定向 stdio/stdin 非常简单。这意味着在服务器中执行的“打印”命令将在客户端显示打印的字符串。
如此处所述,RPyC 2不安全且不推荐使用,但我无法在任何地方找到如何使用 RPyC 3 在客户端进行打印。
有谁知道如何实现这一目标?
编辑:
例如,这是我的服务器的代码:
import rpyc
import time
from rpyc.utils.server import ThreadedServer
class TimeService(rpyc.Service):
def exposed_print_time(self):
for i in xrange(10):
print time.ctime()
time.sleep(1)
if __name__ == "__main__":
t = ThreadedServer(TimeService, port=8000)
t.start()
在我的客户中,我运行:
conn = rpyc.connect("192.168.1.5")
conn.root.print_time()
我的目标是在客户端的标准输出中每秒获取时间(或我想打印的任何其他内容),但客户端只是挂起,时间只打印在服务器中。