修复flask问题

This commit is contained in:
2025-10-27 17:01:30 +08:00
parent 77d2978db1
commit 7b732aad62
2 changed files with 1 additions and 27 deletions

View File

@@ -107,7 +107,7 @@ def _apply_device_event(obj: Dict[str, Any]):
def _handle_conn(conn: socket.socket, addr):
"""统一的连接处理函数(外部全局,避免内嵌函数覆盖)"""
try:
LogManager.info(f"[SOCKET][ACCEPT] from={addr}")
# LogManager.info(f"[SOCKET][ACCEPT] from={addr}")
with conn:
buffer = ""
while True:
@@ -173,35 +173,9 @@ def start_socket_listener():
continue
threading.Thread(target=_handle_conn, args=(conn, addr), daemon=True).start()
# 监听存活看门狗:端口不可连就拉起
def _listener_watchdog():
import socket as _s
port = int(os.getenv('FLASK_COMM_PORT', 34566))
while True:
try:
ok = False
try:
with _s.socket(_s.AF_INET, _s.SOCK_STREAM) as c:
c.settimeout(1.0)
c.connect(('127.0.0.1', port))
ok = True
except Exception:
ok = False
if not ok:
LogManager.warning(f"[SOCKET][WATCHDOG] listener not reachable on {port}, restarting...")
try:
threading.Thread(target=start_socket_listener, daemon=True).start()
except Exception as e:
LogManager.error(f"[SOCKET][WATCHDOG] restart failed: {e}")
except Exception as e:
LogManager.error(f"[SOCKET][WATCHDOG] error: {e}")
time.sleep(5)
# 独立线程启动 Socket 服务 + 看门狗
listener_thread = threading.Thread(target=start_socket_listener, daemon=True)
listener_thread.start()
watchdog_thread = threading.Thread(target=_listener_watchdog, daemon=True)
watchdog_thread.start()
# ============ API 路由 ============
@app.route('/deviceList', methods=['GET'])