修改停止线程的bug
This commit is contained in:
@@ -233,8 +233,14 @@ def start_socket_listener():
|
||||
pass
|
||||
|
||||
# 独立线程启动 Socket 服务 + 看门狗
|
||||
listener_thread = threading.Thread(target=start_socket_listener, daemon=True)
|
||||
listener_thread.start()
|
||||
def bootstrap_server_side_effects():
|
||||
# 仅在真正的 Flask 进程里启动副作用(监听、定时器、MQ 等)
|
||||
listener_thread = threading.Thread(target=start_socket_listener, daemon=True)
|
||||
listener_thread.start()
|
||||
|
||||
# 获取app
|
||||
def get_app():
|
||||
return app
|
||||
|
||||
# ============ API 路由 ============
|
||||
@app.route('/deviceList', methods=['GET'])
|
||||
@@ -836,5 +842,5 @@ def restartTikTok():
|
||||
return ResultData(data="").toJson()
|
||||
|
||||
if __name__ == '__main__':
|
||||
# 注意:这里建议 debug=False,避免未来有人改成 use_reloader=True 导致多进程
|
||||
app.run("0.0.0.0", port=5000, debug=False, use_reloader=False, threaded=True)
|
||||
# 只有“明确是 Flask 进程”才跑副作用(通过 APP_ROLE 控制)
|
||||
app.run("0.0.0.0", port=5000, debug=False, use_reloader=False, threaded=True)
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
import os
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
from Utils.LogManager import LogManager
|
||||
import logging
|
||||
|
||||
@@ -30,11 +29,11 @@ LOG_DIR.mkdir(exist_ok=True) # 确保 log 目录存在
|
||||
print(f"日志目录: {LOG_DIR}")
|
||||
|
||||
def _run_flask_role():
|
||||
from Module import FlaskService
|
||||
from Module.FlaskService import get_app, bootstrap_server_side_effects
|
||||
print("Flask Pid:", os.getpid())
|
||||
port = int(os.getenv("FLASK_COMM_PORT", "34566")) # 固定端口的兜底仍是 34567
|
||||
app_factory = getattr(FlaskService, "create_app", None)
|
||||
app = app_factory() if callable(app_factory) else FlaskService.app
|
||||
app = get_app()
|
||||
bootstrap_server_side_effects()
|
||||
app.run(host="0.0.0.0", port=port + 1, debug=False, use_reloader=False, threaded=False)
|
||||
|
||||
if "--role=flask" in sys.argv:
|
||||
@@ -92,3 +91,4 @@ if __name__ == "__main__":
|
||||
finally:
|
||||
# 进程退出前记得把子进程关掉
|
||||
manager.stop()
|
||||
|
||||
|
||||
@@ -453,6 +453,8 @@ class ScriptManager():
|
||||
# 设置查找深度
|
||||
session.appium_settings({"snapshotMaxDepth": 15})
|
||||
|
||||
session.appium_settings({"waitForQuiescence": False})
|
||||
|
||||
# 创建udid名称的目录
|
||||
AiUtils.makeUdidDir(udid)
|
||||
|
||||
@@ -472,6 +474,7 @@ class ScriptManager():
|
||||
# 循环条件。1、 循环关闭 2、 数据处理完毕
|
||||
while not event.is_set():
|
||||
print(f"关注打招呼开始循环,设备是:{udid}")
|
||||
session.appium_settings({"waitForQuiescence": False})
|
||||
|
||||
LogManager.method_info("=== 外层 while 新一轮 ===", "关注打招呼", udid)
|
||||
if event.is_set():
|
||||
@@ -1626,7 +1629,6 @@ class ScriptManager():
|
||||
user_text = None
|
||||
info_count += 1
|
||||
|
||||
print("当前页面的节点", session.source())
|
||||
|
||||
if user_text:
|
||||
print("点击进入用户主页")
|
||||
|
||||
Reference in New Issue
Block a user