AWS lambda 与 python asyncio。事件循环闭合问题?

2024-03-05

关闭 aws lambda 中的事件循环会影响未来的 lambda 运行吗?

  • 我有一些 aysncio python 代码在 aws lambda 服务中运行。代码逻辑如下

    def lambda_handler(event,context):
        loop = asyncio.get_event_loop()
        # perform all operations with the loop
        loop.close()
        return results
    
  • 如果我运行一次,它看起来工作正常。但是,如果我之后立即重新运行它,我会收到一条错误消息事件循环关闭

  • 为什么会发生这种情况?每个 lambda 运行不应该独立于最后一个吗?毕竟 lambda 应该是无国籍的

Python 3.7+

您可以使用更高级别的asyncio.run()那会处理好事情的。

def handler(event, context):
    asyncio.run(main())

async def main():
    # your async code here

这将在最后关闭循环,并在再次运行 lambda 时打开一个新循环。.run()asyncio 维护者也推荐。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AWS lambda 与 python asyncio。事件循环闭合问题? 的相关文章

随机推荐

  • Ajp 收到带有签名的无效消息

    我使用的是 Tomcat 7 0 29 前端是 Apache 2 2 22 modproxy 在 httpd conf 中将 Ajp 配置为协议 在 server xml 中将 AjpNioProtocol 配置为 AjpNioProtoc
  • 连接到 pyqtSignal 的 lambda 中对象的生命周期

    假设我有一个对象 并希望在发出 PyQt 信号时执行其方法之一 假设我希望它使用信号未传递的参数来执行此操作 所以我创建了一个 lambda 作为信号槽 class MyClass object def init self model mo
  • 仅使用页面数据通过 Javascript 触发浏览器的“另存为”对话框

    作为页面输出的一部分 我在文本区域中包含了数据表的 CSV 格式版本 以便用户可以轻松地将 CSV 导出复制 粘贴到他们选择的电子表格中 我想要一种方法 有一个按钮 当单击该按钮时 将触发 另存为 对话框 该对话框将下载页面文本区域中已存在
  • 动态数组:使用 realloc() 无内存泄漏

    我使用 realloc 来调整分配的内存大小 char get channel name void char result int n result char 0 for elem snd mixer first elem handle n
  • 在快速中间件中记录请求和响应

    我正在尝试实现一个记录器Express http expressjs com应用 我需要它能够记录请求以及为每个请求发回的响应 状态代码和正文 我开始编写一个如下所示的中间件 function req res next res on fin
  • 从数据库检索数据时如何转义特殊字符?

    我将根据从 SQL Server 返回的数据生成 XML 文件 但有一些特殊字符 例如 x1F and x1C 可能还有其他类似的字符 这将使 XML 失败 有什么办法可以逃离他们吗 Thanks 控制字符 U 001C 文件分隔符 和 U
  • 在Java中一次向ArrayList添加多个项目[重复]

    这个问题在这里已经有答案了 如何一次向 ArrayList 添加多个项目 ArrayList
  • 如何从虚拟环境 (virtualenv) 启动 python Idle

    我有一个从虚拟环境安装的软件包 如果我只是启动 python 解释器 则可以很好地导入该包 但是 如果我启动 Idle 则无法导入该包 因为它仅在一个特定的 virtualenv 中可用 而不是在全局中可用 如何从 virtualenv 启
  • 使用 GDI+ 和 C# 更改图像对比度

    我的问题如下 我正在制作一个程序 可以通过 C 代码操纵亮度 伽玛和对比度 对于亮度和伽玛来说还可以 我已经通过在网上找到的代码实现了它 但我不能进行对比 到目前为止我唯一发现的是CalculateRamp方法 其输入参数 double l
  • 如何使用 JavaScript 更改 div 内容?

    我有简单的 HTML 代码和一些 JavaScript 看起来像
  • Chrome 和可能 Opera 自动对对象属性进行排序

    问题是 Chrome 会自动对对象的属性进行排序 如果我有一个像这样的对象 var obj 4 first 2 second 1 third 然后当我下一步时 for var i in obj console debug obj i 我看到
  • 在网页中嵌入 IRC 客户端的最佳方式

    我正在寻找一个好的 免费的 最好是开源的 IRC 客户端来嵌入网页中 支持大多数浏览器的明显要求是 如果需要插件 则该插件应该是已经广泛部署的插件 并且不应该给提供页面服务的网络服务器带来太大压力 不是一个真正的编程问题 但是Mibbit
  • JQuery - 从数据动态生成图形树视图

    我想动态生成一个树视图来表示应用程序中的用户连接 但我不希望它看起来像普通的树视图 看起来像文件系统结构 如下所示 但更像是这样的流程图 所以基本上我想以比树视图更图形化的方式显示它 如果可能的话 能够放大和缩小 如何才能实现这一目标 你知
  • Blackberry - 具有不同 ID 的可点击 BitmapField

    我正在创建一个应用程序 在其中我通过 JSON 从 Web 服务器获取带有 id 的礼品图像 当我点击任何礼物图像时 它会进入下一页 其中显示该图像的所有信息 通过 JSON 从 Web 服务器获取图像信息及其 ID 问题是 当我点击页面上
  • 轴。即使api返回404错误,如何在try catch finally中获得错误响应

    for e g async gt let apiRes null try apiRes await axios get https silex edgeprop my api v1 a catch err console error err
  • R 上的实时图表 - Shiny

    我正在尝试制作一个交互式图表 在一个闪亮的应用程序上绘制金融股票数据 我的尝试是不断更新数据 从而更新图表 我使用一个名为 Highcharter 的包来管理这个 下面显示了服务器部分的部分代码 getDataIntraday 接收两个输入
  • 向路由器或视图集添加更多视图 (Django-Rest-Framework)

    本质上 我试图找到一种在不创建自定义路由器的情况下将更多视图附加到路由器的好方法 有什么好的方法可以实现这个目标呢 这与我想要实现的目标相当 为了这个问题 变量名已经改变 我想介绍的示例方法也被极其简化 Router router rout
  • Python 3、网页抓取和 Javascript [天哪]

    我已经到了使用 Javascript 和 Python3 进入网页抓取混战的阶段 我很清楚我的靴子可能会碰到一匹死马 但我还是想拔出我的六发枪 这是一部意大利式西部片 是我的灰帽子吗 背景故事 我正在使用Python 3 2 3 我有兴趣收
  • 使用谷歌分析数据将嵌套行转置为bigquery中的列

    我感兴趣的是使用自定义维度属性来吸引访问者 其中每一行都是一个唯一的 fullvisitorid 列是所需的自定义维度值 以伦敦头盔为例 在这里我用我感兴趣的两个自定义尺寸来吸引访客 SELECT fullvisitorid customD
  • AWS lambda 与 python asyncio。事件循环闭合问题?

    关闭 aws lambda 中的事件循环会影响未来的 lambda 运行吗 我有一些 aysncio python 代码在 aws lambda 服务中运行 代码逻辑如下 def lambda handler event context l