我希望使用 RPyC 为硬件板提供 API 作为服务。该板一次只能满足单个用户的需求。有什么办法可以让 RPyC 强制一次只有一个用户可以访问?
问问题
169 次
1 回答
2
我不确定这是否可行(或运行良好),但您可以尝试在循环中启动OneShotServer,因此在任何给定时刻只提供一个连接。当连接关闭时,服务器终止,您为下一个客户端启动另一个。
就像是:
is_aborting = False
while not is_aborting:
server = OneShotServer(myservice, *args, **kwargs)
# serve the next client:
server.start()
# done serving the client
如果这不起作用,最好的办法是继承ThreadedServer,并覆盖_accept_method方法以跟踪是否已经打开了连接,如果有则返回错误。
于 2016-01-18T20:29:09.933 回答