Boost Beast WebSocket+SSL定时重连触发Operation cancelled错误求助
WebSocket定时重连Boost库相关问题排查
问题背景
我通过WebSocket连接交易所,当前连接能稳定运行,但交易所存在连接超时机制,超时后会主动断开连接。为了获得更可控的通信通道,同时更新有效令牌,测试设置为每60秒主动定时重连。
错误日志
触发定时重连后,无法建立新连接,出现以下错误:
[WSCO]: [04/22/2025 23:08:12] Reconnection timer triggered. Reconnecting... [WSCO]: [04/22/2025 23:08:18] Read error: Operation canceled. Reconnecting... [WSCO]: [04/22/2025 23:08:24] Exception during close: Operation canceled [WSCO]: [04/22/2025 23:08:30] Read error: Operation canceled. Reconnecting... [WSCO]: [04/22/2025 23:08:36] Read error: Operation canceled. Reconnecting... [WSCO]: [04/22/2025 23:08:42] Read error: Operation canceled. Reconnecting... [WSCO]: [04/22/2025 23:08:48] Read error: Operation canceled. Reconnecting...
推测与目标
推测问题出在Boost WebSocket或SSL层面的同步事件处理上,但无法定位具体原因。
核心目标:
- 到达
RECONNECTION_TIMER时长后,优雅关闭当前连接并重新建立连接 - 若网络断开,等待
RECONNECTION_TIMEOUT时长后自动重连
当前连接在触发定时重连前能稳定运行,请求帮忙排查问题。
相关代码文件
- src/WebSocketClientOrder.h
- src/WebSocketClientOrder.cpp
- main.cpp
- CMakeLists.txt
- Makefile
内容的提问来源于stack exchange,提问作者stas stas
相关产品推荐
相关产品推荐

