gpt4 book ai didi

python - 使用 run_in_executor 和 asyncio 时的超时处理

转载 作者:太空狗 更新时间:2023-10-30 00:35:26 48 4
gpt4 key购买 nike

我正在使用 asyncio 来运行一段这样的阻塞代码:

result = await loop.run_in_executor(None, long_running_function)

我的问题是:我可以为 long_running_function 的执行施加超时吗?

基本上我不希望 long_running_function 持续超过 2 秒并且我无法在其中进行适当的超时处理,因为该函数来自第三方库。

最佳答案

关于取消长时间运行的函数的警告:

虽然用 asyncio.wait_for 调用包装 loop.run_in_executor 返回的 Future 将允许事件循环x 秒后停止等待 long_running_function,它不一定会停止底层的 long_running_function。这是 concurrent.futures 的缺点之一,据我所知,没有简单的方法可以取消 concurrent.futures.Future

关于python - 使用 run_in_executor 和 asyncio 时的超时处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34452590/

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