143 浏览
0

print(‘成交记录’,len(df),’条。’)
api.close()

在程序的最后一行,写了api.close(),引发了报错:

Task was destroyed but it is pending!
task: <Task pending name=’Task-49′ coro=<Connection.keepalive() running at C:\Python312\Lib\site-packages\websockets\asyncio\connection.py:815> wait_for=<Future pending cb=[Task.task_wakeup()]>>

关键词是Connection.keepalive() running

虽然是最后一行,不影响当前程序运行,但可能会影响下一个py进程。

chaos 已回答的问题 4小时 前
0

您好,程序结束前调用 api.close() 是正确的用法。这条日志表示程序退出时,WebSocket 的心跳任务还没清理完。如果下一次运行是重新启动一个独立的 Python 进程,上一进程的这个任务不会带过去。

方便贴一下能复现的最小代码,以及 TqSdk 和 websockets 的版本吗?保留 TqApi 的创建、使用和关闭这几步就行,账号密码记得删掉。我们按您的运行方式复现一下。

chaos 发表新评论 4小时 前

有其他问题欢迎加入官方Q群748265037一起交流

您正在查看1个答案中的1个,单击此处查看所有答案。