ai项目
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import subprocess
|
||||
import sys
|
||||
import threading
|
||||
import atexit
|
||||
import json
|
||||
@@ -36,11 +37,19 @@ class FlaskSubprocessManager:
|
||||
if self.process is not None:
|
||||
raise RuntimeError("子进程已在运行中!")
|
||||
# 通过环境变量传递通信端口
|
||||
base_dir = os.path.dirname(os.path.abspath(__file__)) # 当前脚本所在路径
|
||||
script_path = os.path.abspath(os.path.join(base_dir, "../Flask/FlaskService.py"))
|
||||
python_executable = os.path.abspath(sys.executable) # 获取当前解释器路径
|
||||
|
||||
if not os.path.isfile(script_path):
|
||||
raise FileNotFoundError(f"❌ 找不到 FlaskService.py: {script_path}")
|
||||
|
||||
# 通过环境变量传递通信端口
|
||||
env = os.environ.copy()
|
||||
env['FLASK_COMM_PORT'] = str(self.comm_port)
|
||||
|
||||
self.process = subprocess.Popen(
|
||||
['python', 'Flask/FlaskService.py'], # 启动一个子进程 FlaskService.py
|
||||
[python_executable, script_path], # 启动一个子进程 FlaskService.py
|
||||
stdin=subprocess.PIPE, # 标准输入流,用于向子进程发送数据
|
||||
stdout=subprocess.PIPE, # 标准输出流,用于接收子进程的输出
|
||||
stderr=subprocess.PIPE, # 标准错误流,用于接收子进程的错误信息
|
||||
|
||||
Reference in New Issue
Block a user