【发布时间】:2021-06-22 06:02:24
【问题描述】:
我正在从事一些依赖于 websocket 数据的项目。 有时会话会从 API 的另一端过期。 这就是我的线程的声明方式。
streaming_thread = threading.Thread(target=stream_live_load)
streaming_thread.start()
我只想知道如何在线程死亡时使用线程 ID/编号重新启动,并在循环中再次重新启动上述内容,直到我专门杀死它。
【问题讨论】:
-
这能回答你的问题吗? Is there any way to kill a Thread?
-
线程有一个
is_alive()方法,您可以使用它来确定它们是否仍在运行,因此您可以使用它定期检查其状态。 -
为什么线程会死掉?如果您可以在线程中重新启动 websocket(也许处理异常),那么您将不需要重新启动线程。否则,您应该查看线程池。 Python 不允许您明确地重新启动已退出的线程。
标签: python multithreading websocket python-multithreading algorithmic-trading