修复web socket满了导致后面代码无法执行bug

This commit is contained in:
zqc
2026-03-09 16:49:38 +08:00
parent 15f50ef266
commit 12e685a592

View File

@@ -445,13 +445,18 @@ class BaseFrameProcessorWorker(threading.Thread):
"result_type": push_actions, "result_type": push_actions,
"image_base64": img_b64 "image_base64": img_b64
} }
# 先推送到ws队列
try: try:
self.ws_queue.put(msg, timeout=1.0) self.ws_queue.put(msg, timeout=1.0)
except queue.Full:
logger.warning("[WARN] ws_send_queue full, drop frame message")
# 如果有告警需要POST即使ws队列满了也要发送
if push_actions and len(push_actions) > 0: if push_actions and len(push_actions) > 0:
# 构建消息 # 构建消息
post_msg = msg.copy() post_msg = msg.copy()
post_msg['type'] = self.POST_TYPE post_msg['type'] = self.POST_TYPE
post_msg['ori_alert']: result_alerts post_msg['ori_alert'] = result_alerts
#备用backup #备用backup
#self.post_executor.submit(self._post_alert, post_msg) #self.post_executor.submit(self._post_alert, post_msg)
@@ -467,8 +472,6 @@ class BaseFrameProcessorWorker(threading.Thread):
segment_path, segment_path,
segment_duration segment_duration
) )
except queue.Full:
logger.warning("[WARN] ws_send_queue full, drop frame message")
except Exception as e: except Exception as e:
logger.error( logger.error(