【问题标题】:Python open-dis examples not running as expectedPython open-dis 示例未按预期运行
【发布时间】:2020-11-23 23:16:33
【问题描述】:

我正在尝试让open-dis python package 在我的机器上正确运行。我正在运行 Python 3.8。

使用 pip,我从它的源代码编译包:pip install .

之后,按照文档中的说明进行操作。我跑python dis_receiver.py

我立即遇到了这个错误:

Created UDP socket 3001
Traceback (most recent call last):
  File "dis_receiver.py", line 40, in <module>
    recv()
  File "dis_receiver.py", line 27, in recv
    data = udpSocket.recv(1024) # buffer size in bytes
socket.timeout: timed out

我真的不明白为什么会发生这种情况,因为我对记录的示例过程完全没有改变。知道为什么会这样吗?

【问题讨论】:

  • 您是否也在运行发件人,如同一示例所示?
  • @mkrieger1 我不是,因为它指示在发送者之前运行接收者。
  • 您是否尝试同时运行发件人?
  • @mkrieger1 Sender 似乎运行没有问题,给我硬编码的反馈消息,表明已发送数据包。
  • 也许您应该发送错误报告并要求他们澄清他们的示例。

标签: python dis


【解决方案1】:

原来套接字超时设置为 3 秒后过期。这是在这里设置的:

udpSocket.settimeout(3) # exit if we get nothing in this many seconds

只需将其更改为更高的数字即可给自己一些额外的时间,而不会再有套接字超时。

udpSocket.settimeout(20000) # exit if we get nothing in this many seconds

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-02
    • 2020-07-24
    • 1970-01-01
    • 1970-01-01
    • 2014-04-11
    • 1970-01-01
    • 1970-01-01
    • 2014-11-12
    相关资源
    最近更新 更多