python - Flask 运行循环并在 html 中更新其输出

标签 python flask multiprocessing

我正在构建 Flask 应用程序,以便实现以下功能:

  1. 访问“localhost/run”(ajax),它在flask中运行一个循环,循环使用print('')打印输出。
  2. html 文本区域不断获取第 1 项的输出(这里可能是 ajax“localhost/update”?)
  3. 访问“localhost/stop”(ajax),停止项目 1 的循环

我搜索了很多有关多线程、进程、Celery 的信息,但似乎找不到实现上述目标的解决方案。

更新我目前所掌握的内容:

pp=None
@simple_page.route('/stop')
def stopApp():
    pp.join()

@simple_page.route('/run')
def runApp():
    pp = Process(target=theAppLoop, args=('',))
    pp.daemon = True
    pp.start()

@simple_page.route('/update')
def updateMonitor():
    #return pp's print('')?

def theAppLoop(s):
    while True:
        run_cycle()

def run_cycle():
    #call others func and those func will do print('')

最佳答案

经过几次搜索,针对“flask runloop并更新其在html中的输出”的问题 》,我通过socket解决了

关于python - Flask 运行循环并在 html 中更新其输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56536085/

相关文章:

flask - 如果从 Flask 创建并调用 dash 应用程序,则 Dash 回调不起作用

python - 检测 bool 值从 True 到 False 的变化,反之亦然

python - 如何为 Windows 重写这个多处理代码?

python - 如何在for循环中用空格分隔值

python - 路径 'contains_points' 使用贝塞尔曲线产生不正确的结果

python - 在 python 中实现此工作流的最佳方式

multithreading - 达到超时并在Rust中输出过程时终止过程

python - 为什么 python 回溯消息不显示?

python - 如何使用 Flask 选择多个复选框并插入到 MySql 中

python - 了解简单的多处理脚本