首页 > 解决方案 > Python - 如果 1 分钟内没有任何反应,请继续执行代码

问题描述

我正在编写一个脚本,它通过 websocket 向设备发送串行消息。当我想启动我写的设备时:

def start(ws):
    """
    Function to send the start command
    """
    print("start")
    command = dict()
    command["commandId"] = 601
    command["id"] = 54321
    command["params"] = {}
    send_command(ws, command)

设备每 5 小时左右重新启动一次,在重新启动期间,我的功能启动请求没有运行,我的代码完全停止。

我的问题是,有没有办法告诉 python:“如果 1 分钟没有发生任何事情,请再试一次”

标签: pythonwait

解决方案


目前尚不清楚究竟是什么ws或如何设置它;但是您想为套接字添加超时。

https://websockets.readthedocs.io/en/stable/api.html#websockets.client.connect有一个timeout关键字;有关其作用的详细信息,请参阅文档。

如果这不是您使用的 websocket 库,请使用详细信息更新您的问题。


推荐阅读