问题标签 [rpyc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
223 浏览

python - 使用 python RPYC 向所有连接发送广播消息

我正在使用脚本中的 rpyc 连接到多客户端。

是否有任何机制可以从脚本向所有 rpyc 客户端发送广播消息?

0 投票
0 回答
335 浏览

python - RPyC 客户端到客户端发送消息冻结

我正在尝试使用 RPyC 从客户端向另一个客户端发送消息。

在我使用以下代码的那一刻,我首先启动服务器,然后将客户端连接并“注册”到服务器(我也可以对 on_connect() 方法做到这一点......但到目前为止没有改变任何东西如我所见)。

非常感谢任何建议或帮助,谢谢!

要注册客户,我这样做:

在一个外壳上(client1 => light):

在另一个外壳(client2 => dark)上:

脚本冻结,直到我回到“轻”外壳并写一些东西(如 c.root ...),然后我可以在“轻”外壳上看到结果,如果我在外壳中什么都不做,似乎结果永远不会出现..

服务器(h_server.py):

客户端(h_client.py):

0 投票
0 回答
303 浏览

python - 使用 rpyc 回调从服务器更新客户端小部件

当任何客户端向服务器发送一些消息时,我想编辑所有客户端QTextBrowser日志。

我的预期程序是这样的:

[client]enter -> [client]chatUI.handleEnter -> (RFC)[server]exposed_send -> [server]broadcast -> (RFC)[clients]update.emit() -> [clients]listen -> 日志已更改

当我运行此代码时,其他客户端日志不会更改,只有向服务器提供输入的客户端具有更新的日志。

我如何解决这个问题以正确更新所有客户端?

聊天服务器.py

聊天客户端.py

聊天界面.py

0 投票
1 回答
96 浏览

python - 使用 RFC 小部件从服务器更新客户端的 GUI 小部件

我用python制作简单的GUI聊天程序

从服务器调用回调函数:

回调函数发出客户端信号

在服务器的接受函数中

就是这个

在我的客户班

听方法是

所以服务器调用回调函数并在客户端发出更新GUI小部件的信号

当有一个客户时,它运作良好。但是当有多个客户端时,例如客户端 A 和客户端 B,A -message-> 服务器和服务器只更新 A 的 GUI 小部件。B 的回调被阻塞,直到 B 向服务器发送消息。我希望该客户端的 GUI 更新调用立即像中断调用一样

我怎样才能做到这一点?

0 投票
1 回答
251 浏览

python - rpyc:root.getmodule("module_name") 和手动返回模块引用之间的区别?

我想使用只能在远程 rpyc 服务器上访问的 python 模块。以下两种访问远程机器上的模块的方式有区别吗:


“””在客户端:“””

  1. my_local_mod_ref = my_rpyc_connection.root.getmodule("remote_module_name")
  2. my_local_mod_ref = my_rpyc_connection.root.a_func_returning_the_module_ref()


""" 在服务器端:"""

如果有区别,这两种选择中的哪一种更清洁或更可取?

0 投票
0 回答
466 浏览

python - 如何将参数传递给 rpyc.SlaveService 对象的 __init__()?

这是我的工作代码:


但是,我想向 Services' 传递一些论点__init__()。我试过了

但这给了我

回溯(最后一次调用):文件“rpyc_server.py”,第 145 行,在 my_threaded_server = ThreadedServer(RPyCService(asdf), port= RPYC_SERVER_PORT )

我不确定我是否也必须以conn某种方式添加论点。我想知道它是从哪里来的......

在我的情况下,将参数传递给公开的服务方法不是一种选择。我需要在调用服务时传递参数__init__()

如何将参数传递给__init__()对象rpyc.SlaveService

0 投票
1 回答
513 浏览

python - subprocess.call 与 rpyc 抛出错误

我正在使用 RPyc 在远程机器上执行命令。运行以下代码时出现错误:

远程回溯是:

可能是什么问题?有任何想法吗?

0 投票
1 回答
1845 浏览

python - 使用 RPYC 导入模块

我正在尝试远程进入交互式 shell 并在 python 2.7 中导入模块。我要挂了 到目前为止,这就是我所拥有的:

会话存在

我想发出一个import sys,这样我就可以将另一个模块添加到路径中。但是,当我尝试查看路径中是否存在模块时,我得到以下信息:

我需要远程执行的是以下内容:

是否可以让 rpyc 发出上述内容?提前致谢

0 投票
0 回答
1212 浏览

python - rpyc connection closed by peer

I'm following rpyc tutorials on this page but get EOFError when run this code

I've searched a lot but didn't find a way to fix this issue. The server and client run in same machine. I'm running the script on macbook pro. Need help in fixing this error.

You can find the source code of stream.py here.

Here is the traceback:

0 投票
2 回答
1434 浏览

python-2.7 - 如何将弱引用更改为强引用?

我使用 RPyC 连接到客户端并使用参数对象调用服务公开方法。我想从暴露的方法中获取这个对象并用它做一些事情,但是这个对象是弱引用的,当时我想访问它的数据:我得到一个 ReferenceError 告诉我对象“弱引用对象没有不再存在”

如何从垃圾收集中保护具有弱引用的对象?如何将其更改为强引用?

server.py(发送消息)

client.py(处理数据并将其放入队列)

other.py(读取队列)