gpt4 book ai didi

python - 停止外部函数处理

转载 作者:行者123 更新时间:2023-12-01 09:19:21 25 4
gpt4 key购买 nike

我有一个大问题。我正在一个 Web Python 项目中工作,在该项目中,单击按钮后,将调用特定的 Controller ,然后还会调用 python 模块中存在的另一个函数,如下面的代码所示。但是,我需要第二个按钮来停止流功能 Controller 的进程。

import analyser
def stream():
analyser.get_texts()
response.flash = "Analysis Done."
return ""

我一直在搜索如何通过外部事件(类似于中断)来停止进程,但我得到的所有解决方案都是关于如何使用 停止 python 脚本例如,sys.exit() 或通过return 语句以编程方式执行。这些解决方案实际上都不适合我。

我希望用户能够随时停止该函数,只要我的函数 analysisr.get_texts() 始终保持处理状态。

所以,我的问题是如何通过单击 View 上的按钮来停止 stream 函数的执行?谢谢。

最佳答案

如果我理解正确,那么您的分析器没有提供自己的方式来终止正在进行的计算。因此,您需要将其包装成允许您在未经分析器“同意”的情况下终止分析器的东西。

正确的方法取决于以这种方式终止分析器有多糟糕:它是否会使资源处于不良状态?

根据情况,您有多种选择:

  • 在单独的进程中运行分析。这些可以从外部干净地杀死。请注意,强制停止线程通常不是一个好主意,因此请使用进程。

  • 使用某种异步任务管理来创建和停止任务(例如 Celery)。

关于python - 停止外部函数处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50930330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com